Lobe Icons

A tree-shakable React/React Native icon library of AI and LLM brand logos, with static SVG/PNG/WebP CDN packages for any stack.

Library
npm
v5.21.0
2,546 stars
MIT License

Repository Health

Pre-computed score based on development activity, maintenance, community, maturity, and trend momentum. How we score it →
86 /100 Excellent
Development Activity 96
Maintenance 100
Community 60
Maturity 48
Momentum 40

Technical Analysis

AI-assessed by reading the actual repository — architecture, code quality, innovation, and documentation. How we score it →
79 /100 Good
Architecture 82
Code Quality 74
Innovation 68
Learning Curve 90

Lobe Icons is a large, actively maintained collection of brand logos for AI companies, LLM providers, and model-serving platforms, packaged as tree-shakable React and React Native components. Each brand ships as a folder under src/ (330+ as of this writing) exposing mono, color, avatar, and text variants generated from a shared style definition, so a single import gives you every rendering mode for that logo.

Beyond the React package, the monorepo also publishes framework-agnostic static assets — @lobehub/icons-static-svg, -png, -webp, and -avatar — mirrored to unpkg and the npmmirror/Aliyun CDN, so teams that aren’t on React can still drop in a logo via a plain <img> tag. A ModelIcon component adds keyword-based model-name resolution (matching strings like meta-llama/llama-3.3-70b or muse-spark-1.3 to the correct brand) so consumers of chat/agent UIs can render the right logo from a raw model identifier without maintaining their own mapping table.

The project is maintained by LobeHub, the team behind the Lobe Chat AI assistant, and is used as the icon source for that product and for other tools in their ecosystem that need to represent AI providers and models visually.

What You Get

  • React and React Native components for 300+ AI/LLM brand and provider logos, each with mono, color, avatar, and text variants
  • A ModelIcon component that resolves a raw model identifier string (e.g. meta-llama/llama-3.3-70b) to the correct brand icon via keyword/regex matching
  • Framework-agnostic static asset packages (-static-svg, -static-png, -static-webp, -static-avatar) usable via plain <img> tags, served from unpkg or the npmmirror/Aliyun CDN mirror
  • Tree-shakable ESM output (built with father) so bundlers only ship the specific icons actually imported
  • Combine/avatar helper components (ProviderCombine, IconCombine, IconAvatar) for composing provider + model icon pairs in chat and agent UIs

Common Use Cases

  • Rendering provider/model logos in an LLM chat or agent interface (model pickers, message headers, settings pages)
  • Building an AI tool directory or comparison site that needs consistent brand marks for dozens of AI vendors
  • Adding a brand icon to a non-React app (Vue, plain HTML, email templates) via the static SVG/PNG/WebP CDN packages
  • Mapping raw model ID strings returned from an API response to a recognizable logo instead of maintaining a custom icon map
  • Theming dashboards or docs pages that reference multiple AI providers with light/dark-aware logo variants

Under The Hood

Architecture The repo is a pnpm workspace: the root @lobehub/icons package holds one directory per brand under src/ (e.g. src/Anthropic/), each exporting Mono, Color, Avatar, and Text sub-components built from a shared style.ts (color/title constants) and composed onto a single default export object (Icons.Avatar, Icons.Text, Icons.colorPrimary). Higher-level composition lives in src/features/ — ModelIcon and ProviderIcon look up a brand via modelConfig.ts/providerConfig.tsx keyword tables and render the matched icon, falling back to DefaultIcon/DefaultAvatar when nothing matches. packages/ holds sibling packages (react-native, static-svg, static-png, static-webp, static-avatar) built and released independently via multi-semantic-release, so the same source SVGs feed both the component library and framework-agnostic static distributions. Adding a brand means adding a folder and wiring it into the relevant config table — a flat, additive structure with low coupling between icons.

Tech Stack TypeScript + React 19 (with a React Native variant) built via father (Umi’s library bundler) to ESM-only es/ output; styling helpers from antd-style and polished; lucide-react for a handful of generic UI icons used in docs. Static SVG/PNG/WebP generation is a separate pipeline (svgo for optimization, sharp and puppeteer for raster conversion) driven by scripts in scripts/svgWorkflow. Documentation is built with the LobeHub-internal @lobehub/docs-kit (lobedocs) rather than a generic static-site generator. Releases use semantic-release/multi-semantic-release with conventional commits enforced by commitlint and husky.

Code Quality Testing uses Vitest with @testing-library/react and renderToStaticMarkup for snapshot-free assertions; the checked-in test suite is thin (a single tests/ModelIcon.test.tsx covering brand-resolution edge cases like disambiguating Meta’s “Muse Spark” from iFlyTek’s “Spark”) rather than per-icon rendering tests, which is reasonable given most icons are generated SVG wrappers rather than logic-bearing code. TypeScript runs in strict mode with a dedicated type-check CI script; linting is centralized through the shared @lobehub/lint ESLint config plus Stylelint and dpdm for circular-dependency detection, all wired into lint-staged/husky pre-commit hooks and a GitHub Actions test.yml workflow.

What Makes It Unique Most icon libraries are generic (brand-agnostic) or hand-curated one-off SVG sets; Lobe Icons is scoped specifically to the AI/LLM ecosystem and is kept current as new model providers appear, since it’s a working dependency of the actively developed Lobe Chat product rather than a side project. The ModelIcon keyword-resolution layer is the more novel piece — it turns an arbitrary model-ID string into a correctly-branded icon (including deliberately distinguishing similarly-named models from different vendors), a problem most consumers would otherwise solve with a bespoke, quickly-stale lookup table. Shipping the same source assets simultaneously as React components, React Native components, and framework-agnostic static CDN bundles from one monorepo is also a broader distribution strategy than typical single-target icon packages.

Used by 6 apps in this directory

TypeScript
54%
MIT

Anarlog

AI Assistants · Note Taking · Productivity

9,404

Anarlog is an open-source, local-first AI meeting notetaker that records, transcribes, and summarizes meetings entirely on your device — no cloud lock-in, no mandatory account, and every note saved as a plain markdown file you own forever.

View details
86
Repo Health
77
Technical
68
Dependency
Built with
TypeScript 54%
Rust 34%
Updated 4 days ago
JavaScript
95%
MIT

AnythingLLM

AI Assistants · Automation · Developer Tools

66,533

The all-in-one AI platform for private document chat, no-code agents, and local LLMs with zero setup friction.

View details
90
Repo Health
78
Technical
64
Dependency
Built with
JavaScript 95%
Updated 6 days ago
TypeScript
92%
GPL 3.0

Blinko

Knowledge Management · Note Taking

11,049

A self-hosted, AI-powered card note-taking tool that lets you capture fleeting thoughts instantly and retrieve them with natural language search.

View details
75
Repo Health
69
Technical
63
Dependency
Built with
TypeScript 92%
Updated 1 months ago
TypeScript
45%
AGPL 3.0

BrowserOS

AI Assistants · Browser

13,763

The open-source agentic Chromium browser with native AI agents, MCP server, and visual workflow automation — your data never leaves your machine.

View details
87
Repo Health
82
Technical
68
Dependency
Built with
TypeScript 45%
Rust 23%
Python 18%
Updated 4 days ago
TypeScript
99%
Other

LobeHub

AI Assistants · Automation · Productivity

82,864

Your Chief Agent Operator — build, schedule, and collaborate with an entire AI team in one self-hostable workspace.

View details
92
Repo Health
81
Technical
66
Dependency
Built with
TypeScript 99%
Updated 4 days ago
TypeScript
95%
MIT

OmniRoute

AI Agents

70,824

A free, open-source AI gateway connecting Claude Code, Codex, Cursor, Cline, and Copilot to 237 AI providers (90+ free) through one endpoint, with automatic fallback and token-compression to stretch free-tier limits further.

View details
86
Repo Health
70
Technical
71
Dependency
Built with
TypeScript 95%
Updated 5 days ago

Join founders buildingwith open source

Opinionated takes, migration guides, cost-saving tips, and insights from the open source ecosystem.

Subscribe on Substack
Join 750+ subscribers