Request an icon
Missing an icon? Ask for it right here, or from your terminal, your app or your AI assistant. You get a token once, send requests with it and follow each one until it ships on npm.
Request it here
First search the catalog, it may already be there. Then get a token with your email, or paste the one you have.
Or use the API
1 Check it is not there yet
Search the catalog, or the published manifest by id, label and keywords: https://unpkg.com/@vectilume/icons@latest/manifest.json.
2 Get a token
curl -X POST https://vectilume.vercel.app/api/keys \
-H "content-type: application/json" \
-d '{"email":"you@example.com"}'
# → 202 {"sent":true,"note":"We sent a confirmation link to that address. …"}Open the link from the email within 15 minutes: this page shows your token, once, so keep it, e.g. in VECTILUME_TOKEN. It shows every request made with your email and nobody else's. Until email confirmation is switched on, the answer is 201 with the token straight away.
3 Send a request
curl -X POST https://vectilume.vercel.app/api/requests \
-H "authorization: Bearer $VECTILUME_TOKEN" \
-H "content-type: application/json" \
-d '{"name":"basketball-hoop","description":"Hoop with net, shown next to the live score","keywords":["nba","score"]}'
# → 201 {"id":42,"status":"open","statusUrl":"https://vectilume.vercel.app/api/requests/42"}name: kebab-case, up to 40 characters.description: 10–500 characters, what the icon shows and where you use it.keywords: optional, up to 10 words.- One icon per request, at most 20 requests per hour per token.
- Generic symbols only: no logos, trademarks or real people.
4 Follow it
curl https://vectilume.vercel.app/api/requests -H "authorization: Bearer $VECTILUME_TOKEN" # all your requests curl https://vectilume.vercel.app/api/requests/42 -H "authorization: Bearer $VECTILUME_TOKEN" # one request
open- Received, not started.
in-progress- Being drawn.
ready- Drawn and added; ships with the next npm release.
done- In the latest @vectilume/icons and @vectilume/react. icon is the final name (it may differ from the one you asked for), version the release.
declined- Not planned; reason may say why.
When it is done: npm install @vectilume/react and import it by its id in PascalCase, e.g. import { BasketballHoop } from "@vectilume/react".
Using an AI assistant?
Point it at https://vectilume.vercel.app/icon-requests.md: the same guide as plain Markdown, with every field, limit and error.