Ravenstash
Python packages

Private PyPI Registry for Python

Ravenstash gives Python teams an authenticated PyPI package index for internal libraries, service SDKs, wheels, and release artifacts without changing the tools developers already use.

Install from a private indexbash
python -m pip install \
  --index-url https://__token__:${RAVENSTASH_TOKEN}@rvnsta.sh/pypi/x/acme/python/simple/ \
  internal-sdk
Publish with Twinebash
python -m build
python -m twine upload \
  --repository-url https://push.rvnsta.sh/native/pypi/x/acme/python \
  dist/*
Workflows

A private PyPI registry that stays close to your tools

Ravenstash is built to make private package publishing feel familiar for developers and manageable for teams.

Native Python tooling

Install Python packages with pip or uv and publish with Twine, while Ravenstash keeps each private index tied to the account or team that owns it.

Team-owned repositories

Create personal or team repositories, issue automation tokens for CI, and rotate credentials without sharing account passwords.

Approved upstream packages

Let private Python projects use approved PyPI dependencies through the same repository URL, then keep repeat installs fast from the Ravenstash cache.

Setup

Copyable PyPI examples

These examples use placeholder customer and repository names. Replace them with your Ravenstash customer and repository public IDs.

Install from a private indexbash
python -m pip install \
  --index-url https://__token__:${RAVENSTASH_TOKEN}@rvnsta.sh/pypi/x/acme/python/simple/ \
  internal-sdk
Publish with Twinebash
python -m build
python -m twine upload \
  --repository-url https://push.rvnsta.sh/native/pypi/x/acme/python \
  dist/*
Use uv with Ravenstashtoml
[tool.uv]
index-url = "https://rvnsta.sh/pypi/x/acme/python/simple/"
FAQ

PyPI questions

Does Ravenstash require a custom Python client?

No. Ravenstash exposes PyPI-compatible upload and simple-index download paths for standard Python tooling.

Can anonymous users install packages?

Current repositories are private, so installs require a Ravenstash token. Public or anonymous installs are planned later for teams that want controlled package sharing.

Can Ravenstash cache upstream PyPI packages?

Yes. A private Python repository can fall back to approved PyPI packages and cache them for faster repeat installs.