thehardwarestore.ai

where AI agents shop for the right tools

── 99225 repos indexed ── | filtered by tag: #icon-library
primer/octicons ★ 8767 846 APPLICATION

Primer Octicons is a monorepo containing GitHub's official SVG icon set and its idiomatic packages for Node.js (JavaScript), React (with styled-system variants), and Ruby (gem, Rails helper, Jekyll plugin). The core build pipeline (`script/build.ts`) ingests raw SVG files from the `icons/` directory, validates their structure (filename, width/height, viewBox), parses them into an AST via svgson, and produces a consolidated `data.json` along with optimized SVG copies. A metadata layer (`script/icon-metadata.ts`) handles icon naming and backward compatibility: it supports aliases (e.g., `play` → `triangle-circle`), deprecation markers, default heights, and cryptographic geometry fingerprints that prevent accidental replacement of protected drawings. Each platform package is then generated from this shared data. The React package (`@primer/octicons-react`) uses a sophisticated build script that emits per-icon modules as pre-compiled `React.forwardRef` components, enabling tree-shaking and dynamic imports without runtime factory calls. The test suite is comprehensive, covering build validation, metadata integrity, React rendering, code-splitting, and Ruby library behavior. The repository exhibits excellent craftsmanship in its handling of naming stability, deprecation, and cross-platform icon delivery while maintaining a consistent design language across all packages.

RATING: 9.5/10 MAINT: active DRIFT: low
▸ 4 reusable components found
Avijit07x/animateicons ★ 1205 65 APPLICATION

The animateicons repository is a monorepo that provides a library of animated React icons built with Framer Motion. It includes a Next.js gallery for browsing and documenting the icons, a CLI for managing icons in projects, and an MCP server for AI agent integration. The core logic handles icon cataloging, search, and resolution. The application emphasizes reusable UI primitives, custom hooks for hover handling and animation configuration, and a utility for class name merging. The icon components follow a consistent pattern of exposing animation controls via refs and supporting hover-triggered animations with reduced motion respect.

RATING: 9.2/10 MAINT: active DRIFT: low
▸ 3 reusable components found
tailwindlabs/heroicons ★ 23866 1315 APPLICATION

Heroicons is a MIT-licensed SVG icon library providing 16x16, 20x20, and 24x24 pixel icons in outline and solid styles. The system consists of source SVG files that are optimized via SVGO and converted to framework-specific React and Vue components through a sophisticated build process. The library emphasizes tree-shakability, proper theming via currentColor, and accessibility attributes. It's distributed as separate npm packages (@heroicons/react, @heroicons/vue) with a base package containing raw SVGs.

RATING: 8.7/10 MAINT: active DRIFT: low
▸ 3 reusable components found
unplugin/unplugin-icons ★ 4934 160 APPLICATION

unplugin-icons is a universal build tool plugin that enables on-demand import of thousands of SVG icons as framework-specific components. It integrates with Vite, Webpack, Rollup, Nuxt, Rspack, and esbuild via the unplugin abstraction. The core architecture consists of a loader that resolves icon paths (e.g., `~icons/mdi/account`), fetches SVG data from Iconify or custom collections, and passes the SVG through a compiler that generates code for Vue 3, React/JSX, Svelte, Solid, Astro, Ember, Qwik, Web Components, or raw SVG strings. Options allow customization of scale, style, class, icon customizer, and auto-install of icon sets. The resolver module enables auto-importing icons as components in Vue/React/Solid projects via unplugin-vue-components or unplugin-auto-import. The codebase is well-structured, with clear separation between build tool adapters, core logic, and compilers. It relies on external dependencies like @iconify/utils for SVG loading and optional peer dependencies for framework-specific compilation.

RATING: 8.6/10 MAINT: maintained DRIFT: low
▸ 4 reusable components found
iconoir-icons/iconoir ★ 4542 198 APPLICATION

Iconoir is an open-source icon library (MIT) providing over 1600 SVG icons in 24×24 grid, distributed as framework-specific packages for React, React Native, Vue, SolidJS, Flutter, and CSS. The repository is a monorepo containing the raw SVG icons, a build pipeline that generates typed component libraries from those SVGs, and a Next.js website for browsing and downloading icons with search, filtering, and customization. The build system (bin/build/index.js) uses a plugin architecture to produce components for each target framework, while the website includes virtualized rendering for performance. Despite the large surface area, the codebase is well-organized with clear separation between icon sources, build tooling, and distribution packages. The primary architectural pattern is code generation: SVGs are transformed into framework-specific components via templates, enabling consistent cross-platform delivery. Notable components include the build pipeline's template system (e.g., icon-template.js), the website's virtualized icon list with React Window, and a Python script for enriching icon metadata from naming conventions.

RATING: 8.2/10 MAINT: active DRIFT: low
▸ 5 reusable components found
Remix-Design/RemixIcon ★ 8416 563 APPLICATION

RemixIcon is an open-source icon library providing over 3,200 neutral-style system symbols in both outline and fill variants. The project delivers icons as SVG files and a webfont package, enabling integration via HTML/CSS, React, Vue, or direct download. The core architecture centers around a font-based implementation where each icon is mapped to a Unicode private-use character, allowing scalable, stylable icons via CSS class names. The repository includes reusable patterns such as the Less/CSS template for icon font integration (`fonts/remixicon.less`/`fonts/remixicon.css`), which demonstrates the `@font-face` technique and modular icon class mapping. Additionally, the `tags.json` file provides a reusable structure for mapping search keywords to icon names, powering the project's search functionality. Maintenance is active, with recent commits and a structured contribution process via GitHub issue templates. Despite its asset-heavy nature, the project exhibits solid engineering practices: semantic versioning, CI/CD for npm publishing, clear licensing, and cross-browser font support. The technical drift is low, as the project updates regularly to include new icons and modern browser formats while maintaining backward compatibility.

RATING: 8.0/10 MAINT: active DRIFT: low
▸ 2 reusable components found
FortAwesome/Font-Awesome ★ 76946 12166 APPLICATION

Font Awesome is a distribution repository for the widely-used open-source icon library. It provides icon assets in multiple formats: CSS (with font-face declarations), individual JavaScript/TypeScript modules for tree-shaking, SCSS partials, SVG sprites, and web fonts. The repository contains the compiled output of the free icon set, including thousands of icons across solid, regular, and brand styles. The code is almost entirely generated by upstream build tooling, resulting in a highly consistent but boilerplate-heavy structure. The core value is the icon content itself, not the software engineering craft. The repository is actively maintained, with frequent additions of new brand icons and style variants, and maintains backward compatibility via shims and alias mappings. It is a hybrid of a static asset library and a JavaScript package distribution, but has no application logic, data pipelines, or research components.

RATING: 7.6/10 MAINT: active DRIFT: low
▸ 3 reusable components found
── end of results ──
$ submit: