Icons

Svelte Icons

Svelte has the smallest selection of first-party packages, which makes coverage and export flexibility more important than usual.

Recommended libraries for Svelte
LibraryIconsVariants GridLicensePackage
Lucide Icons 1,979 outline only 24×24 ISC lucide-react
Heroicons 1,297 outline and solid 16/20/24 MIT @heroicons/react
Phosphor Icons 9,198 thin, light, regular, bold, fill and duotone 24×24 MIT phosphor-react
Tabler Icons 6,324 outline only 24×24 MIT @tabler/icons-react

What to watch for on Svelte

Because Svelte compiles away, importing raw SVG paths is nearly free. When a set has no Svelte package, pasting an inline SVG from IconStash is often cleaner than adding a dependency.

Recommended starting point

For most Svelte projects, start with Lucide Icons — 1,979 icons, outline only, ISC licensed, installed as lucide-react. Move to Heroicons if you need outline and solid instead.

Frequently asked questions

Which icon library is best for Svelte?

Lucide Icons is the safest default: 1,979 icons, ISC licensed, and a first-party package. Because Svelte compiles away, importing raw SVG paths is nearly free. When a set has no Svelte package, pasting an inline SVG from IconStash is often cleaner than adding a dependency.

Do icon libraries slow down a Svelte app?

Only if you import the whole set. Every library here tree-shakes, so bundling ten named icon exports ships ten icons. Watch for barrel imports like import * as Icons from "...", which defeat that.

Can I use raw SVG instead of a package?

Yes, and for small numbers of icons it is often better — no dependency, no version drift, and full control over attributes. Export any icon from IconStash as an inline SVG or a downloadable file and paste it straight in.