DEV Community

Cover image for Stop Installing 15 Icon NPM Packages in Every Single Project. Do This Instead.
Huzzi
Huzzi

Posted on

Stop Installing 15 Icon NPM Packages in Every Single Project. Do This Instead.

We’ve all done it.

You start a new React, Vue, or Next.js project. You need icons.

So what do you do?

  • npm i lucide-react
  • npm i @heroicons/react
  • npm i react-icons
  • npm i @tabler/icons-react

Before you know it, your node_modules is pushing 2GB, your bundle analyzer looks like a crime scene, and you’re still missing that one specific "shopping-bag-check-outline" icon for your navbar.

So you switch tabs to Google, search "free svg icon", land on some ad-infested site, click "Download SVG", drag it into your code, wrap it manually in JSX, tweak the viewBox, fix the stroke width... and repeat that 40 times a week.

We waste up to 40 hours a year doing this.


The Fix: 134,701 Icons Across 28 Libraries, Zero NPM Bloat

Instead of cluttering dependencies or juggling 15 different documentation sites, I built IconStash — a lightning-fast, unified SVG search engine.

Think of it as Google Search for SVGs, but on extreme performance steroids.

What makes it completely different:

  1. 28 Popular Icon Libraries in 1 Place: Lucide, Tabler, Phosphor, Material Symbols, Remix, Heroicons, Carbon, Simple Icons, Radix, Pixel Art, and 18 more.
  2. Global Customization Grid: Adjust stroke width and fill colors globally across all 134,000+ icons simultaneously before copying.
  3. Instant One-Click React/JSX Export: Click any icon -> grab clean JSX/SVG code -> paste directly into your component. No npm installs required.
  4. Cross-Library Matching: Found a cool icon in Phosphor but your project uses Tabler? The detail drawer automatically searches and shows matching alternatives across all 28 libraries side by side.
  5. Compare Mode & Collections: Stash icons into personal collections or compare 5 variants side-by-side to see which fits your design system.

How to use it in your workflow:

  1. Press K on iconstash.io to open global search.
  2. Type whatever you need (e.g. camera, user-check, analytics).
  3. Press T to toggle light/dark theme to match your app's palette.
  4. Click Copy JSX or Copy SVG and paste it right into your UI.

Stop bloating your package.json with multi-megabyte icon libraries when you only use 6 icons.

Give it a spin at iconstash.io — it’s 100% free and open-source. What icon library do you use most in your projects? Let’s talk in the comments!

Top comments (0)