npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

nerd-fonts-installer

v1.0.3

Published

Install Nerd Fonts on Linux, macOS, and Windows (Cygwin/WSL)

Readme


The Nerd Fonts installer provides cross-platform scripts to easily install Nerd Fonts from the command line. It's available as a bash script or via npm/yarn/bun/pnpm/deno. screenshot

Watch installer demo

Features

✨ Cross-Platform Support

  • Linux/macOS: Bash script (install.sh) with user-level font installation
  • Windows (Cygwin/WSL): Bash script installs to both %LOCALAPPDATA%\Microsoft\Windows\Fonts and ~/.local/share/fonts/

🎯 Easy to Use

  • Interactive menu with all 70 Nerd Fonts
  • Non-interactive mode for scripting and automation
  • Install multiple fonts in one run
  • Colored output for better user experience
  • Installed font detection — already-installed fonts are highlighted in green in the interactive menu
  • --list shows fonts currently installed on your system, not the full catalog
  • Input validation and error handling
  • Automatic cleanup of temporary files

🔧 Platform-Specific Installation

  • Linux: Installs to ~/.local/share/fonts/ (or $XDG_DATA_HOME/fonts/) and refreshes font cache
  • macOS: Installs to ~/Library/Fonts/
  • Windows (Cygwin): Installs to both %LOCALAPPDATA%\Microsoft\Windows\Fonts and ~/.local/share/fonts/ (or $XDG_DATA_HOME/fonts/), and refreshes font cache
  • Windows: Installs to %LOCALAPPDATA%\Microsoft\Windows\Fonts and registers with system

📦 Font Support

  • Supports both .ttf and .otf font files
  • Downloads latest versions from GitHub releases
  • Prefers .tar.xz archives (smaller); falls back to .zip when xz is unavailable
  • Handles font extraction and installation automatically

Compatibility

Windows Support

  • Windows 10: Version 1903 (May 2019 Update) or later
  • Windows 11: All versions supported
  • PowerShell: 5.1+ or PowerShell Core 6+

The Windows PowerShell script has been tested on:

  • Windows 10 Pro for Workstations (Build 26100)
  • PowerShell Core 7.5.2
  • PowerShell 5.1 (Windows PowerShell)

Linux/macOS/Cygwin Support

  • All modern Linux distributions with Bash 3.2+
  • macOS 10.9+ (Mavericks) or later
  • Cygwin on Windows 10/11 (requires curl or wget, tar or unzip, cygpath)

Linux, macOS and Cygwin (Bash)

Interactive mode — pick fonts from a menu:

bash -c "$(curl -fsSL https://raw.githubusercontent.com/officialrajdeepsingh/nerd-fonts-installer/main/install.sh)"

Non-interactive mode — install one or more fonts directly:

# Single font
curl -fsSL https://raw.githubusercontent.com/officialrajdeepsingh/nerd-fonts-installer/main/install.sh | bash -s -- Monoid

# Multiple fonts (space-separated or comma-separated)
curl -fsSL https://raw.githubusercontent.com/officialrajdeepsingh/nerd-fonts-installer/main/install.sh | bash -s -- Monoid Hack JetBrainsMono
curl -fsSL https://raw.githubusercontent.com/officialrajdeepsingh/nerd-fonts-installer/main/install.sh | bash -s -- Monoid,Hack,JetBrainsMono

Options:

| Flag | Env var | Description | |---|---|---| | --help / -h | — | Show help message with all commands and examples | | --list / -l | — | List Nerd Fonts currently installed on your system | | --version / -v | — | Print installer version (1.0.2) and exit | | --quiet / -q | LOG_LEVEL=0 | Suppress informational output | | --color | USE_COLOR=1 | Force colored output | | --no-color | USE_COLOR=0 | Disable colored output | | --nerd-fonts-version=v3.4.0 | NERD_FONTS_VERSION=v3.4.0 | Pin a specific Nerd Fonts release (default: latest) |

# List fonts installed on your system
./install.sh --list

# View help
./install.sh --help

# Pin a specific Nerd Fonts release in non-interactive mode
NERD_FONTS_VERSION=v3.4.0 ./install.sh Monoid
./install.sh --nerd-fonts-version=v3.4.0 Monoid

# Pin a specific release in interactive mode
NERD_FONTS_VERSION=v3.4.0 ./install.sh
./install.sh --nerd-fonts-version=v3.4.0

# Silent install
./install.sh --quiet Monoid

Versioning

This project uses two separate version concepts:

| Version | Description | Default | |---|---|---| | Installer version (--version) | Version of the nerd-fonts-installer tool itself | 1.0.2 (from package.json) | | Nerd Fonts version (--nerd-fonts-version) | Release of Nerd Fonts to download from GitHub | latest |

  • The installer version is baked into install.sh and matches package.json. It only changes when the tool itself is updated.
  • The Nerd Fonts version defaults to latest (always fetches the newest release). Pin a specific version with --nerd-fonts-version=v3.4.0 or NERD_FONTS_VERSION=v3.4.0.
# Show installer version
./install.sh --version

# Pin Nerd Fonts version
./install.sh --nerd-fonts-version=v3.4.0 Hack
NERD_FONTS_VERSION=v3.4.0 ./install.sh Hack

Re-download and reinstall all currently installed Nerd Fonts to the latest release:

# Update all installed fonts (auto-detected from font directory)
./install.sh update

Note: Auto-detect scans ${FONT_DIR}/<FontName>/ subdirectories. On macOS this feature won't work.

update respects NERD_FONTS_VERSION to pin a specific release:

NERD_FONTS_VERSION=v3.4.0 ./install.sh update

Windows (Cygwin/WSL)

On Windows, run the bash script via Cygwin or WSL. The script auto-detects Cygwin and installs fonts to both %LOCALAPPDATA%\Microsoft\Windows\Fonts and ~/.local/share/fonts/.

bash <(curl -fsSL 'https://raw.githubusercontent.com/officialrajdeepsingh/nerd-fonts-installer/main/install.sh')

npm / yarn / bun / pnpm / deno

Install and run via any npm-compatible package manager:

# npm
npx nerd-fonts-installer --help
npx nerd-fonts-installer --list
npx nerd-fonts-installer
npx nerd-fonts-installer Hack FiraCode
npx nerd-fonts-installer --nerd-fonts-version=v3.4.0 Monoid
npx nerd-fonts-installer --quiet Hack

# yarn
yarn dlx nerd-fonts-installer --help
yarn dlx nerd-fonts-installer --list
yarn dlx nerd-fonts-installer
yarn dlx nerd-fonts-installer Hack FiraCode
yarn dlx nerd-fonts-installer --nerd-fonts-version=v3.4.0 Monoid

# bun
bunx nerd-fonts-installer --help
bunx nerd-fonts-installer --list
bunx nerd-fonts-installer
bunx nerd-fonts-installer Hack FiraCode
bunx nerd-fonts-installer --nerd-fonts-version=v3.4.0 Monoid

# pnpm
pnpm dlx nerd-fonts-installer --help
pnpm dlx nerd-fonts-installer --list
pnpm dlx nerd-fonts-installer
pnpm dlx nerd-fonts-installer Hack FiraCode
pnpm dlx nerd-fonts-installer --nerd-fonts-version=v3.4.0 Monoid

# deno
deno run --allow-run npm:nerd-fonts-installer -- --help
deno run --allow-run npm:nerd-fonts-installer -- --list
deno run --allow-run npm:nerd-fonts-installer
deno run --allow-run npm:nerd-fonts-installer -- Hack FiraCode
deno run --allow-run npm:nerd-fonts-installer -- --nerd-fonts-version=v3.4.0 Monoid

Or install globally (all flags and commands work the same):

npm install -g nerd-fonts-installer

nerd-fonts-installer --help
nerd-fonts-installer --list
nerd-fonts-installer
nerd-fonts-installer Hack FiraCode
nerd-fonts-installer --nerd-fonts-version=v3.4.0
nerd-fonts-installer --quiet Monoid