@expo/vector-icons
Built-in icon font components (FontAwesome, Ionicons, Material Icons, and more) for Expo/React Native apps
Repository Health
Technical Analysis
@expo/vector-icons wraps react-native-vector-icons into a form that works out of the box with Expo, bundling over a dozen popular icon font sets — FontAwesome, Ionicons, MaterialIcons, MaterialCommunityIcons, Feather, Entypo, and others — as ready-to-use React Native components with zero native linking required in the Expo managed workflow.
Beyond the bundled fonts, it exposes createIconSet and related helpers so you can wrap your own custom icon font (including Fontello or IcoMoon exports) into the same component API, giving apps a consistent way to render vector icons whether they come from a stock set or a designer’s custom font.
What You Get
- Ready-made React Native components for 15+ popular icon fonts (FontAwesome, Ionicons, Material Icons, Feather, Entypo, etc.)
- Zero native linking required inside the Expo managed workflow
- createIconSet / createIconSetFromFontello / createIconSetFromIcoMoon helpers for wrapping custom icon fonts
- TypeScript type definitions for every bundled icon set
- A browsable icon directory (icons.expo.fyi) for finding icon names across all bundled sets
- createMultiStyleIconSet for icon fonts that ship multiple visual styles per glyph
Common Use Cases
- Rendering common UI icons (tab bars, buttons, list items) in Expo/React Native apps
- Swapping between icon families (FontAwesome vs Material) without changing the rendering API
- Wrapping a designer-provided custom icon font for consistent use across a React Native app
- Building design systems that need a single, typed icon component API
Under The Hood
Architecture - Each bundled icon set (e.g. FontAwesome.js, Ionicons.js) is a thin wrapper generated by createIconSet.js, which maps a glyph-name-to-codepoint map onto a shared Icon React Native Text-based renderer that loads the corresponding font asset; createIconSetFromFontello/createIconSetFromIcoMoon parse those tools’ exported config JSON to build the same glyph map for custom fonts. Tech Stack - TypeScript/JavaScript React Native components, built and tested with Expo’s own expo-module CLI tooling (build, lint, test, clean scripts), with font assets copied into build/vendor at publish time. Code Quality - The repo carries .d.ts type definitions alongside every icon set’s .js file for full TypeScript support, though the project’s low recent commit velocity (release cadence has slowed) means most current work is maintenance rather than new features. API Design - Usage is a single import plus a JSX element with name/size/color props, making the common case nearly zero-boilerplate; the createIconSet* helpers require more setup but follow a consistent, documented shape across all three creation paths.
Used by 14 apps in this directory
Papra
Bookmarks Archiving
Self-hosted document archiving with email ingestion, OCR full-text search, and pluggable storage — store once, find anything.
Polar
Developer Tools · Ecommerce · Invoicing Finance
Open source payments infrastructure that turns software into a business — subscriptions, usage-based billing, digital products, and merchant-of-record compliance in one platform.
Supabase
Authentication · Databases · Developer Tools
The open-source Postgres development platform that replaces Firebase with authentication, real-time APIs, edge functions, storage, and vector embeddings — all built on PostgreSQL.
superset
AI Code Assistants · AI Development
Orchestrate an army of AI coding agents—Claude Code, Codex, Gemini CLI, and more—running simultaneously in isolated git worktrees from a single Electron desktop app.
Tianji
Analytics · Monitoring
Replace Google Analytics, UptimeKuma, and Prometheus with one self-hosted platform that tracks websites, monitors uptime, and reports server health.