Browse, search, and copy Nerd Font glyphs from your locally installed fonts — entirely offline.
Features • Requirements • Quick Start • Usage • Development
U+E000) as you type, with results capped at 200 for snappy performanceopentype.js; no image assets required~/Library/Fonts and caches metadata in ~/.cache/nerd-font-picker/glyphs.json; nothing leaves your machine~/Library/Fonts whose filename ends in NerdFontMono-Regular.ttf or NerdFont-Regular.ttfPopular choices from nerdfonts.com: JetBrains Mono Nerd Font, FiraCode Nerd Font, Hack Nerd Font. Any variant that ships the standard Nerd Font PUA block (U+E000–U+F8FF) will work.
Return to copy the glyph and close, or open the action panel (Cmd+K) for more copy optionsType freely in the search bar to filter by glyph name or codepoint:
| Query | Matches |
|---|---|
arrow | All glyphs whose name contains "arrow" |
U+E0A0 | Exact codepoint lookup |
e0a | Partial codepoint match |
nf-dev | Name-prefix filtering (Devicons family) |
Selecting any glyph opens a split detail view showing:
| Field | Example |
|---|---|
| Name | nf-dev-git |
| Codepoint | U+E0A0 |
| Unicode Escape | |
| HTML Entity |  |
| Glyph | `` (raw character) |
Cmd+K)| Action | Description |
|---|---|
| Copy Glyph & Close | Copies the raw glyph character and dismisses Raycast |
| Copy Glyph | Copies the raw glyph character and stays open |
| Copy Codepoint | Copies U+E0A0 |
| Copy Name | Copies the glyph name string |
| Copy Unicode Escape | Copies (or \Uxxxxxxxx for higher planes) |
| Refresh Cache | Re-parses the font and rebuilds ~/.cache/nerd-font-picker/glyphs.json |
Open Raycast Preferences → Extensions → Nerd Font Picker to configure:
| Preference | Values | Default |
|---|---|---|
| Icon Colour | White, Black | White |
nerd-font-picker/
├── src/
│ ├── list.tsx # Main command — UI, search state, action panel
│ └── utils.ts # Font parsing, SVG rendering, cache I/O, search logic
├── assets/ # Extension icon (place command-icon.png here)
├── package.json
└── tsconfig.json
| Script | Description |
|---|---|
npm run dev | Start extension in development mode with hot reload |
npm run build | Build for production (ray build -e dist) |
npm run lint | Run Raycast ESLint config |
npm run fix-lint | Auto-fix lint issues |
npm run publish | Publish to the Raycast Store |
git clone https://github.com/raycast/extensions.git
cd extensions/extensions/nerd-font-picker
npm install
npm run dev
Then open Raycast and search for "Nerd Font Glyphs".
| Package | Role |
|---|---|
@raycast/api | Raycast extension primitives (List, ActionPanel, Clipboard…) |
@raycast/utils | Higher-level Raycast utilities |
opentype.js | Font parsing — reads TTF outlines and extracts PUA glyph paths |
typescript | Type-safe source compilation |
eslint + @raycast/eslint-config | Linting with Raycast's opinionated ruleset |
prettier | Code formatting |
MIT © kud — Made with ❤️