Logo
Deploy Now

Stars

17753

Forks

1469

Watchers

150

Developer links

Verdaccio

Private npm packages without shipping code to the public registry or paying for npm Enterprise: Verdaccio is the standard lightweight, zero-config private registry and caching proxy. It runs as a single Node.js process with its own tiny embedded database; no external database is required to start. Point npm, yarn, or pnpm at it and everything behaves as expected: install, publish, unpublish, dist-tags, and deprecation all work against the standard npm endpoints. The uplink system is where it earns its keep: packages not found locally are fetched from configured upstreams (npmjs.org, yarn, JFrog, Nexus, or another Verdaccio), cached as tarballs, and served locally thereafter - cutting CI latency and surviving registry outages. Multiple uplinks chain for failover, and per-package glob patterns in config.yaml route scopes to specific upstreams while controlling access, publish, and unpublish rights per group. You can even override a public package by publishing a patched version under the same name locally. A plugin architecture swaps in auth backends (htpasswd default, LDAP and others available), storage drivers (S3, Google Cloud Storage), middleware routes, and metadata filters. With official Docker images and a Kubernetes Helm chart, it slots into any pipeline in minutes.

Verdaccio

Benefits

  • Private Code Stays Private
  • Publish internal packages with the full npm workflow - no public exposure, no per-user registry fees.
  • Faster, More Resilient CI
  • Cached tarballs serve repeat installs locally, cutting latency and keeping builds green through npmjs.org outages.
  • One Endpoint, Many Registries
  • Uplink chaining merges npmjs, corporate Nexus/JFrog, and other sources behind a single registry URL.
  • Patch Without Forking Workflows
  • Publish a fixed version of any third-party package under the same name and every project picks it up transparently.

Features

  • Zero-Config Start
  • Embedded database and sane defaults - a working registry from a single process.
  • Full npm Client Support
  • Install, publish, unpublish, dist-tag, and deprecate via npm, yarn, and pnpm.
  • Uplink Proxying and Cache
  • Fetch-through caching from npmjs and other registries with timeouts, auth tokens, and failover.
  • Per-Package Access Control
  • Glob-pattern rules govern access, publish, unpublish, and proxy routing per scope.
  • Plugin Architecture
  • Swap auth (htpasswd, LDAP), storage (S3, GCS), middleware, and filters via config.yaml.
  • Docker and Helm
  • Official container image and Kubernetes chart for pipeline-ready deployment.