Verdaccio

Verdaccio is a simple, zero-config-required local private NPM registry.

  • Development
  • Productivity
  • Tools & Utilities
Verdaccio is a simple, zero-config-required local private NPM registry. No need for an entire database just to get started. Verdaccio comes out of the box with its own tiny database, and the ability to proxy other registries (eg. npmjs.org), also introduces caching the downloaded modules along the way. For those who are looking to extend their storage capabilities, Verdaccio supports various community-made plugins to hook into services such as Amazon's S3, Google Cloud Storage or create your own plugin.

Platform availability

Available on 3 of 9 platforms

  • Unraid
  • TrueNAS
  • Umbrel (not listed)
  • ZimaOS (not listed)
  • Proxmox (not listed)
  • Helm
  • Mac (not listed)
  • Windows (not listed)
  • Linux (not listed)

Health score?A 0-100 score computed nightly from four factors: maintained (40%: recent commits and steady activity), popular (25%: GitHub stars, log scale), easy to install (20%: platforms, install notes, setup guides, Docker image) and light to run (15%: minimum RAM, ARM support). When the source code has been checked, a fifth factor, security check (20%: automated scan for committed secrets, unsafe desktop-app settings, known-vulnerable dependencies and project hygiene; any serious finding caps it at 20), is added. Factors without data are left out and the rest are rescaled.

84/100 Excellent

Maintained
100last commit 10 days ago
Popular
8517,913 GitHub stars
Easy to install
452 install platforms, install notes, Docker image
Light to run
95512 MB minimum RAM, runs on ARM

Availability: platform listings confirmed today, links checked 17 days ago

GitHub stars
17,913
Open issues
26
Last commit
2026-10-05
Latest release
v6.10.5
License
MIT
Activity
steady

Checked 9 days ago - source: GitHub (verdaccio/verdaccio)

Resources & Compatibility

Minimum requirements: 512 MB RAM, 1 CPU core(s), 10 GB disk. ARM (e.g. Raspberry Pi) is supported.

Checked 16 days ago - source: Docker Hub image tags and published docs

First-install notes

  • Start the Docker Compose registry Run `docker compose up --build --force-recreate` in the HTTP (Hypertext Transfer Protocol) reverse-proxy example to start the containers. If you skip this, Verdaccio is not running and browsers or npm (Node Package Manager) clients cannot connect. source
  • Point package clients to local port 4873 Set npm (Node Package Manager) clients to the local Verdaccio endpoint `http://localhost:4873` so installs go through your local registry. If you skip it, npm keeps using the public registry and your locally published packages may not be found. source
  • Set persistent storage and logins Give Verdaccio a persistent storage folder and an htpasswd authentication file in its configuration. If storage is not persistent, packages can disappear after a restart, and without the authentication file users cannot log in. source

Fetched 16 days ago - each note links to its source

Alternatives (4)

  • Lix Project - A modern, delicious implementation of the Nix package manager, focused on correctness, usability, and growth — and committed to doing right…
  • PyPI - The Python Package Index (PyPI) is a repository of software for the Python programming language.
  • npm - npm is a package manager for Node.js that is run through the command line and manages dependencies for an application.
  • pnpm - Fast, disk space efficient package manager.

Checked 14 days ago - source: AlternativeTo

Common questions

How do I make npm use my local Verdaccio registry instead of the public one?

Set npm clients to the local Verdaccio endpoint on port 4873 so installs go through your local registry. If you skip it, npm keeps using the public registry and your locally published packages may not be found.

What persistent files should I configure so packages and logins survive restarts?

Give Verdaccio a persistent storage folder and an htpasswd authentication file in its configuration. If storage is not persistent, packages can disappear after a restart, and without the authentication file users cannot log in.

How do I start the nginx reverse-proxy relative-path Docker Compose example?

Run docker compose up --build --force-recreate in the HTTP reverse-proxy example to start the containers. If you skip this, Verdaccio is not running and browsers or npm clients cannot connect.

Can Verdaccio cache npmjs.org to reduce latency or help with outages?

Verdaccio can proxy npmjs.org and cache downloaded modules. If multiple servers install packages, this can decrease latency and provide limited failover.

Can I chain multiple registries through one endpoint?

You can chain multiple registries so one project can fetch packages from multiple sources through one single endpoint.

Answers sourced from github.com, github.com, github.com, verdaccio.org

Community

Collected 16 days ago - public community threads