Icon
Interactive
See Icon in Storybook for every variant, with live controls.
The only sanctioned icon source in Eidos. Wraps Lucide, addressed by kebab-case name.
import { Icon } from "@kairosis/eidos";
<Icon name="git-branch" size={16} />;
Props
| Prop | Type | Default | Description |
|---|---|---|---|
name | IconName | — | Required. Lucide name, kebab-case |
size | number | 16 | Square, in px |
strokeWidth | number | 1.75 | |
color | string | — | Defaults to currentColor |
Guidelines
- Use Lucide's current names. Several were renamed:
circle-check(notcheck-circle-2),triangle-alert(notalert-triangle),circle-alert(notalert-circle),house(nothome). An unknown name renders nothing and warns in development. - Icons are
aria-hidden— they're decorative. When an icon is a control's only content, label the control (seeIconButton). - Colour is inherited: set
coloron the parent and the glyph follows. Only passcolorto break from the text colour. - 16px alongside text; 16–18px inside a 36px standalone hit target.
- Names are resolved from Lucide's map at runtime, so the whole set is available without extra imports — the trade-off is that bundlers can't tree-shake unused glyphs.