The shadcn/ui kit for Figma uses Lucide as its default icon library. If you want to use a different icon set for your project, follow the instructions below.
The kit supports the five icon libraries available in shadcn/create:
Icon-library visibility is driven by boolean variables in the Style collection (icon-library/lucide, icon-library/huge, icon-library/phosphor, icon-library/tabler, icon-library/remix). Set exactly one to true.
The default is Lucide. To use a different one:
icon-library/* boolean for the library you want to true, and set the currently active one to false. Keep exactly one enabled.
You can also switch the icon library from the Figma to shadcn/ui plugin — its Create tab applies your icon-library choice across all 8 styles.
The kit includes all five libraries, which adds weight. Choose a single library and remove the rest to reduce your file size — a smaller file loads faster and makes component search more responsive.
IconPlaceholder component, delete the instances for any libraries you no longer need.icon-library/* booleans for the libraries you removed.You can swap the icon inside the IconPlaceholder component. For example, to change the Smile icon to another icon:
IconPlaceholder instance.
If an icon is missing from one of the libraries, add it:
The kit is designed to let you plug in your own icon library and use it across components with minimal effort.
A good icon library should:
Sticking to a single, high-quality library from the start keeps your project visually consistent, avoids time-consuming icon replacement later, and keeps the design looking professional.
IconPlaceholder component.IconPlaceholder.icon-library/custom).icon-library/* booleans. Note that the Style collection has 8 modes (one per style) — set the values across all of them so your library stays active in every style.IconPlaceholder.That's all — you can now use your custom icons across every component in the kit.
In some cases Figma may render the IconPlaceholder component larger than intended. This is a known issue that can be resolved by regenerating instances:
Command + /Regenerate all instances (slow).