Iconoteka
Search 1,400 open-source icons in 7 weights and 2 styles, and get paste-ready SVG.
Installation
Ajoutez ceci à la configuration MCP de votre client (Claude Desktop : claude_desktop_config.json ; Cursor : .cursor/mcp.json ; VS Code et les autres utilisent la même forme « mcpServers »).
iconoteka-mcpclaude mcp add iconoteka -- npx -y iconoteka-mcp@0.2.3
{
"mcpServers": {
"iconoteka": {
"command": "npx",
"args": [
"-y",
"iconoteka-mcp@0.2.3"
]
}
}
}
Documentation
Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.
Sommaire
Iconoteka
A universal, open-source library of precisely designed pictograms.
Website · Figma Plugin · License
| 1,400 icons | from rapid prototyping to real-world wayfinding systems |
| 7 weights | Thin, Ultralight, Light, Regular, Medium, Semibold, Bold |
| 2 styles | stroke and fill |
| 16,123 shapes | complete coverage for almost any use case |
| 23 categories | Arrows, Interface, Hardware, Nature, Transportation, … |
Adding icons to your project
Take the icons you need — there's no need to install or clone the whole library.
In Figma — install the plugin, search, drag the icon onto the canvas.
One icon at a time — every icon is a standalone SVG on the CDN:
https://cdn.jsdelivr.net/gh/iconoteka/iconoteka@02.00.15/Icons/Interface/bell-notification-notify-reminder-ring-sound-r-s.svg
The path is Icons/{Category}/{name}-{weight}-{style}.svg, where weight is one
of t u l r m s b (thin → bold) and style is s for stroke or f
for fill. Categories with spaces need URL-encoding: Files%20%26%20Data.
Inline in your markup — both styles are outlined paths, so an icon is a
single <path> with no stroke attributes. Every SVG ships with
fill="currentColor", so it inherits the surrounding text colour:
<svg width="24" height="24" viewBox="0 0 24 24" aria-hidden="true">
<path d="M3 15.55C4.675 13.225 5 11.45 5 8.5…" fill="currentColor"/>
</svg>
Swap the weight or style by changing one letter in the filename — the geometry is designed to stay optically balanced across all seven weights.
Framework packages
Icons as components, generated from the same SVGs:
npm install iconoteka-react # or iconoteka-vue, iconoteka-svelte
import { Bell } from "iconoteka-react";
<Bell />
<Bell weight="bold" variant="fill" size={32} />
weight takes any of the seven, variant is stroke or fill, and anything
else is spread onto the <svg>. Each icon is its own module, so bundlers drop
what you don't import.
Using the full set
icons.json carries every icon and variant in one file — useful for bundling
the set into a design system, generating components, or pulling icons at build
time.
npm install iconoteka
import icons from "iconoteka" with { type: "json" }; // ESM
const icons = require("iconoteka"); // CommonJS
Or fetch it from the CDN:
https://cdn.jsdelivr.net/gh/iconoteka/iconoteka@02.00.15/icons.json
Pin the tag rather than @main — jsDelivr caches branch URLs for up to 7 days.
The npm package contains icons.json only; the raw SVGs stay in the repo.
{
"meta": {
"version": "02.00.09",
"count": 1400,
"categories": 23,
"popular": ["ai", "alert", "bank_card", "bell", "…"]
},
"icons": [
{
"name": "leaf-ecology-nature-natural-leaves-eco-green-organic-plant-wind",
"displayName": "Leaf",
"searchTerms": ["leaf", "ecology", "nature", "natural", "leaves"],
"category": "Nature",
"variants": { "regular": { "stroke": "M12 2.5…", "fill": "M12 2.5…" } }
}
]
}
version.json
A small companion file sits beside icons.json at the repo root:
{ "version": "02.01.00", "display": "v2.1", "count": 1400, "shapes": 16123,
"categories": 23, "keywords": 8430, "words": 5880, "new": 100,
"icons": "https://cdn.jsdelivr.net/gh/iconoteka/iconoteka@02.01.00/icons.json" }
Read it to find the current release, then load the heavy file from the icons
URL it gives. That URL is pinned to a tag, so it is immutable and correct on
every CDN edge at once, and can be cached forever.
Fetch version.json itself from
raw.githubusercontent.com/iconoteka/iconoteka/main/version.json, which has no
CDN cache, rather than from jsDelivr: jsDelivr caches a branch's commit for up
to 12 hours and purging the file does not re-resolve it, so @main can serve
different builds from different edges.
keywords is the slot count — every icon's searchTerms added up. words is
the number of distinct ones.
The first segment of name is the icon's identity; the rest are search-only
aliases, so match on the identity rather than the full string. Weights are
keyed thin, ultralight, light, regular, medium, semibold, bold,
each holding a stroke and/or fill path.
A curated selection carries "popular": true, listed by identity in
meta.popular. Popular is a flag, not a category — no icon is stored twice.
Design
24-point grid — every icon is built on a 24px grid, so straight lines stay crisp at 24, 48, 96px and beyond, and the set sits comfortably alongside other popular libraries.
Advanced optics — deliberate overshoots, density-based weight modularity and optical stroke compensation throughout.
Bracketing system — preserves structural integrity across all seven weights. Unlike stroke-based sets that simply scale outlines, legibility and visual balance hold at both extremes.
System architecture — a structured metaphor hierarchy, a 5° geometric angle rule, tiered corner rounding and modular components keep the library consistent at production scale.
Universality — geometric construction and high visual clarity keep the icons legible across products and industries that demand contrast and structural consistency.
Support
Iconoteka is a free, open-source library created and maintained by one person. Support its future development through a monthly Patreon subscription or a one-time Ko-fi donation.
License
MIT — see LICENSE. Free for personal and commercial use, including in closed-source products. No permission needed, no fee. Credit isn't required, though it's always appreciated.
Author
Built by Oleg Turbaba, Brand Design Director at Clay Global — a multidisciplinary designer working at the intersection of brand identity, digital products and visual experiences.
For enquiries, collaborations, interviews or sponsorships: olegturbaba@gmail.com
Instagram · LinkedIn · Behance
Sharing your work? Mention @iconoteka on Instagram, LinkedIn or X.
Questions fréquentes
Qu'est-ce que Iconoteka ?
Search 1,400 open-source icons in 7 weights and 2 styles, and get paste-ready SVG.
Comment installer Iconoteka ?
Il s'exécute sur votre machine. Dans Claude Code : claude mcp add iconoteka -- npx -y iconoteka-mcp@0.2.3. Pour les autres clients, collez la configuration JSON de cette page dans leurs réglages MCP.
Faut-il une clé API pour Iconoteka ?
Son entrée au registre n'indique aucune clé ni secret obligatoire. Certaines fonctions peuvent tout de même demander un compte auprès du service auquel il se connecte.
Iconoteka est-il open source ?
Oui. Son code est sur GitHub sous licence MIT.
Qui maintient Iconoteka ?
Il est publié par iconoteka. AI.tn le référence sans le maintenir ni le recommander.
Issu du registre MCP officiel. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.