Icon
SVG icons powered by Lucide — zero dependencies, just copy-paste SVG paths.
bun x bosia@latest add icon50+ Lucide icons built-in, with zero npm dependencies. Icons are stored as raw SVG strings in icons.ts — add more by copying from lucide.dev.
Preview
Navigation
Actions
UI
Layout
Status
Content
User
Communication
Misc
Props
| Prop | Type | Default |
|---|---|---|
name |
IconName |
— |
size |
number |
18 |
Usage
<script lang="ts">
import { Icon } from "$lib/components/ui/icon";
</script>
<Icon name="home" />
<Icon name="search" size={24} />
<Icon name="settings" size={16} />With Button
<script lang="ts">
import { Button } from "$lib/components/ui/button";
import { Icon } from "$lib/components/ui/icon";
</script>
<Button variant="ghost" size="icon">
<Icon name="menu" />
</Button>Adding Icons
Open icons.ts and add entries from lucide.dev:
- Find the icon on lucide.dev
- View the SVG source
- Copy everything inside
<svg>...</svg> - Add it to the
iconsmap
// icons.ts
export const icons = {
// ... existing icons
"my-icon": `<path d="M..." /><circle cx="12" cy="12" r="3"/>`,
};Available Icons
Click any icon to copy its name to clipboard.