Iconoteka

السجل الرسمي البحث والويب

Search 1,400 open-source icons in 7 weights and 2 styles, and get paste-ready SVG.

التثبيت

أضف هذا إلى إعدادات MCP في عميلك (Claude Desktop: claude_desktop_config.json، وCursor: ‏.cursor/mcp.json، ويستخدم VS Code وغيره الصيغة نفسها «mcpServers»).

NPM package iconoteka-mcp
Claude Code
claude mcp add iconoteka -- npx -y iconoteka-mcp@0.2.3
إعداد JSON (Claude Desktop وCursor وVS Code)
{
    "mcpServers": {
        "iconoteka": {
            "command": "npx",
            "args": [
                "-y",
                "iconoteka-mcp@0.2.3"
            ]
        }
    }
}

التوثيق

مأخوذ من ملف README للمشروع على GitHub ويُحدَّث أسبوعيًا. تفتح الروابط على GitHub.

المحتويات
  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.

الأسئلة الشائعة

ما هو Iconoteka؟

Search 1,400 open-source icons in 7 weights and 2 styles, and get paste-ready SVG.

كيف أثبّت Iconoteka؟

يعمل على جهازك. في Claude Code: claude mcp add iconoteka -- npx -y iconoteka-mcp@0.2.3. وفي العملاء الآخرين، الصق إعداد JSON من هذه الصفحة في إعدادات MCP الخاصة بهم.

هل يحتاج Iconoteka إلى مفتاح API؟

لا يذكر إدراجه في السجل أي مفتاح أو سر إلزامي. قد تتطلب بعض الميزات حسابًا لدى الخدمة التي يتصل بها.

هل Iconoteka مفتوح المصدر؟

نعم. شيفرته متاحة على GitHub بترخيص MIT.

من يصون Iconoteka؟

ينشره iconoteka. يدرجه AI.tn لكنه لا يصونه ولا يوصي به.

من سجل MCP الرسمي. الإدراج ليس توصية: راجع شيفرة الخادم وصلاحياته قبل منحه الوصول إلى بياناتك.