Developers
Icons without leaving the terminal
A tiny zero-dependency CLI that searches the IconVault library and saves icons as SVG files, ready to commit.
Install
One line, any machine with Node 18+
npm i -g @iconvault/cli
# or run it once without installing
npx @iconvault/cli search "shopping cart"iconvault search "shopping cart"
# mdi:cart
# mdi:cart-outline
# ...
iconvault add mdi:cart lucide:heart
# saved ./icons/mdi-cart.svg (0.4 kB)
# saved ./icons/lucide-heart.svg (0.3 kB)Publishing note: the @iconvault/cli package ships with the next release and is not on npm yet. Until then, every command on this page is implemented for real in packages/cli in the project repo, and you can run it with node packages/cli/bin/iconvault.js.
Commands
The whole surface area
iconvault search <query>Search the library. Prints one prefix:name per line.iconvault search arrow --limit 5Limit results (default 20, max 999).iconvault add mdi:cartDownload one icon as an optimised SVG into ./icons.iconvault add lucide:heart --out ./src/iconsChoose the output directory; it is created if needed.iconvault --helpFull usage, flags and environment variables.iconvault --versionPrint the installed version.Why
Small, fast, honest
Zero dependencies
Only Node built-ins. Installs in seconds and never breaks because a transitive package did.
Script-friendly output
search prints one id per line, so it pipes cleanly into xargs, fzf or your own scripts.
Real SVG files
add writes optimised SVG straight to disk with a predictable prefix-name.svg filename.
Key aware
Set ICONVAULT_KEY to skip the public per-minute limits and use your 1,000 monthly calls.
Configuration
Flags and environment
--limit N search results (default 20, max 999)
--out DIR output directory for add (default ./icons)
--api URL API base URL (default https://iconvault.site)# same as --api
export ICONVAULT_API="https://iconvault.site"
# your key from /api-access, sent as x-api-key
export ICONVAULT_KEY="ivk_live_your_key_here"Questions
CLI FAQ
No. Both commands call the IconVault API over the network. Downloaded SVGs are yours to keep and work offline forever.
It saves ./icons/<prefix>-<name>.svg, so mdi:cart becomes mdi-cart.svg. Collisions across sets are impossible by construction.
No. Without one you share the public limits (120 searches and 240 downloads a minute per IP). Set ICONVAULT_KEY for your personal 1,000-call monthly quota.
Not yet. This is v0.1 with search and add only. Sync, lockfiles and CI checks are on the roadmap and will be documented here when they land.
Get your API key
Pair the CLI with a free key for 1,000 calls a month and no per-minute limits.