# Icons **Always use the project's configured `iconLibrary` for imports.** Check the `iconLibrary` field in `components.json`: `lucide` → `@lucide/svelte`, `tabler` → `@tabler/icons-svelte`, etc. Never assume `@lucide/svelte`. --- ## Icons in Button use data-icon attribute Add `data-icon="inline-start"` (prefix) or `data-icon="inline-end"` (suffix) to the icon. No sizing classes on the icon. **Incorrect:** ```svelte ``` **Correct:** ```svelte ``` --- ## No sizing classes on icons inside components Components handle icon sizing via CSS. Don't add `size-4`, `w-4 h-4`, or other sizing classes to icons inside ` ``` **Correct:** ```svelte ``` The same applies to icons inside `DropdownMenu.Item`, sidebar items, and other menu rows — no extra sizing classes on the icon component. --- ## Pass icons as components, not string keys Use a component reference, not a string key to a lookup map. **Incorrect:** ```svelte ``` **Correct:** ```svelte ```