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+

install
npm i -g @iconvault/cli
# or run it once without installing
npx @iconvault/cli search "shopping cart"
first run
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

flags
--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)
environment
# 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.