Parcelregistry proxy

Package registry and proxy

One registry in front of all of them

npm, PyPI, Maven, Cargo, Go, NuGet, RubyGems and Debian — proxied, cached, scanned and served from one place, with your private packages in the same namespace.

 9 ecosystems provenance verified immutable cache
.npmrc
registry=https://parcel.build/npm/acme/
//parcel.build/npm/acme/:_authToken=${PARCEL_TOKEN}

# pip
index-url = https://parcel.build/pypi/acme/simple/

# cargo
[source.parcel]
registry = "https://parcel.build/cargo/acme/"
2.1B
requests per day
38TB
served per day
9
ecosystems
99.2%
cache hit ratio

Why teams put a proxy in front

Upstream outages stop mattering

Once a version is cached it is served from us, forever, regardless of what happens upstream — including a package being unpublished.

Provenance verification

npm and PyPI attestations are verified on fetch. A package whose provenance does not match its claimed source is quarantined, not served.

One place to look

Every dependency your organisation has ever fetched, searchable, with which repository asked for it and when.

Private and public together

Internal packages resolve alongside public ones, with shadowing rules that make dependency confusion impossible.

Fast, and close

Regional caches with warm indexes. A cold `npm ci` on a large monorepo drops from 94 seconds to 21.

Licence and SBOM inventory

Continuous inventory of every dependency and its licence, exportable as SPDX or CycloneDX.

Supply chain

Blocking a bad release before your build sees it

Quarantine rules hold new versions for a configurable window and check them against advisory feeds and provenance before they become resolvable.

  • New versions quarantined for a window you set — 0 to 72 hours
  • Advisory feeds checked continuously during the hold
  • Provenance mismatch blocks a version outright
  • Typosquat detection on names close to your existing deps
EventAction
New version published upstreamquarantined 24 h
Advisory published during holdblocked, team notified
Provenance does not match repoblocked outright
Name within edit distance 1 of a depflagged for review
Version unpublished upstreamstill served from cache

Common questions

Cached versions keep resolving. New versions cannot be fetched, which is the same as upstream being down — but your existing builds keep working, which is the point.