Solar Icons
1,451 icons in 6 styles. One package per framework. CSS variables, duotone, and tree-shakable imports.
Solar Icons gives you 1,451 distinct icons in six styles: Bold, Linear, Outline, BoldDuotone, LineDuotone, and Broken. With 8,706 total variations.
Packages
React
React 18+ with SolarProvider, useSolar, and CSS variables.
Vue
Vue 3.0+ with SolarProvider, useSolar, and CSS variables.
Svelte
Svelte 5 runes with $bindable provider and named exports.
SolidJS
SolidJS 1.6+ with signal-based useSolar.
Angular
Angular 17+ standalone components with signal-based inputs.
React Native
React Native 0.72+ with react-native-svg.
Nuxt
Nuxt 3+ module with auto-import and configurable prefix.
Static
Framework-agnostic SVGs, sprites, and string modules. Zero JS required.
JS
Vanilla DOM injection with zero VDOM overhead. No framework required.
Codemod
Preview and apply conservative migrations from Solar Icons v1 to v2.
AI tools
Use Solar Icons from the terminal, connect it to an MCP client, or give a coding agent a catalog-aware skill.
What changed in v2
The v2 release unifies the library under a single API across every framework.
- One package per framework.
@solar-icons/react,@solar-icons/vue,@solar-icons/svelte,@solar-icons/solid,@solar-icons/angular,@solar-icons/react-native, and@solar-icons/nuxt. Laravel Blade ships assolar-icons/bladeon Packagist. Framework-free options:@solar-icons/staticand@solar-icons/js. V2 merges@solar-icons/react-perfinto@solar-icons/react. - Classic mode by default. Every icon ships with a single style per component, tree-shakable at the import level. Dynamic style switching uses a separate
dynamicimport path. - CSS variable cascade.
SolarProvidersets--solar-color,--solar-size,--solar-stroke-width, and duotone variables on a wrapper element. Icons inherit these through normal CSS inheritance, no re-renders on change. - Duotone built in.
secondaryColorandsecondaryOpacityprops control the duotone accent path. - Stroke width control. Linear, Broken, and LineDuotone icons accept
strokeWidth. Default is1.5. Iconsuffix on component names.HomeBoldIcon, notHome. Angular uses aSolarprefix (SolarHomeBold) instead.- Kebab-case import paths.
@solar-icons/react/bold/heart, not@solar-icons/react/Bold/Heart.
Icons page
Browse and search all 1,451 icons with live style previews, color controls, and duotone configuration.
Figma plugin
Browse the complete Solar Icons collection in Figma, preview editable strokes, and insert the same SVGs used by the Solar Icons packages.
Migration
If you are upgrading from an older version, follow the migration guide for a step-by-step walkthrough of every breaking change.
Acknowledgements
This project wraps the Solar Icon Set created by 480 Design, licensed under CC BY 4.0.
Design inspiration comes from Phosphor Icons and Lucide Icons.
How is this guide?
Last updated on