Iconoteka

Registre officiel Recherche et web

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 »).

NPM package iconoteka-mcp
Claude Code
claude mcp add iconoteka -- npx -y iconoteka-mcp@0.2.3
Configuration JSON (Claude Desktop, Cursor, VS Code)
{
    "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
  1. Iconoteka
  2. Adding icons to your project
  3. Framework packages
  4. Using the full set
  5. Design
  6. Support
  7. License
  8. Author

Iconoteka

A universal, open-source library of precisely designed pictograms.

Website · Figma Plugin · License

1,400 iconsfrom rapid prototyping to real-world wayfinding systems
7 weightsThin, Ultralight, Light, Regular, Medium, Semibold, Bold
2 stylesstroke and fill
16,123 shapescomplete coverage for almost any use case
23 categoriesArrows, 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.