Icons
Frasto uses Lucide for its built-in interface icons. The visual baseline is a 1.25px stroke, currentColor, and sizing matched to the control. Components still expose icon slots so an application can provide a compatible custom icon when needed.
Components that accept icons should prefer a slot or renderable child:
---import { Button, Icon, PlusIcon } from '@freightpx/frasto';---
<Button> <Icon icon={PlusIcon} slot="icon" /> Customer</Button>Built-in icons use the same visual settings:
<Icon icon={PlusIcon} />Icon applies a 16px size, 1.25px stroke width, currentColor, and decorative accessibility behavior by default. Pass label when the icon itself carries meaning.
- decorative icons are hidden from assistive technology
- icon-only controls require an accessible name
- default icon size follows the control size
- Lucide stroke width is
1.25pxby default - icons do not replace text when the action may be ambiguous
- custom SVG should use
currentColorwhen it inherits component color

