Skip to content
SPECIFICTION
Get listed

pypiserver vs R-universe

pypiserver

github.com

R-universe

r-universe.dev

Side by side

FigurepypiserverR-universe
Price fromFreeFree
Free planYesYes
Free trial——
Open source——
Web—Yes
WindowsYesYes
macOSYesYes
LinuxYesYes
APIYesYes
Self-hostedYes—
Plans published11
Spec score · Package Registries8.3 (#11)7.5 (#20)
IntegrationsThe documentation shows integration with pip, easy_install, setuptools, twine, Docker, and reverse proxies including Nginx and Traefik.Setting up a universe requires a GitHub account and the R-universe GitHub app, while package repositories may be hosted on other public Git servers such as GitLab.
Intended usersThe project describes itself as a self-hosted package index for users who want to serve their own Python packages.The documentation is for R users, package developers, universe developers, and people interested in contributing to the infrastructure or documentation.
Purposepypiserver is a minimal PyPI-compatible server for uploading and downloading Python packages with pip or easy_install.R-universe is rOpenSci’s platform for publishing and discovering research software in R.

Plans

pypiserver

  • pypiserverFree

pypiserver pricing →

R-universe

  • FreeFree

R-universe pricing →

In their own words

pypiserver

pypiserver is a minimal, self-hosted package index for uploading and downloading Python packages with tools such as pip and easy_install. It serves packages from regular directories, including wheels, bdists, eggs and PGP signatures, and scans those directories recursively. Packages can be uploaded with pip, setuptools, twine or pypi-uploader, or copied to the server with scp. Upload access can be protected with an Apache htpasswd file; API users can configure custom authentication callables. The maintainers advise password protection for uploads, and the documentation recommends a reverse proxy to provide HTTPS. pypiserver can run as a WSGI application, with documented integrations for Docker, nginx, Apache, gunicorn and Paste. It provides a health endpoint that returns HTTP 200 when the service is running, with an option to configure the endpoint. The current version supports Python 3.10+ and PyPy3. It is free at free and is listed for Linux, macOS, Windows, API and self-hosted use. Its API covers the operations needed by common package tools rather than the full PyPI API; documentation uploads are accepted but not saved to disk.

Visit github.com

R-universe

R-universe is rOpenSci’s platform for publishing and discovering research software in R. Its searchable catalogue covers R software, articles, and datasets, using R-specific indexing and ranking. Package and universe pages provide detailed information and rendered material. Users and developers can run personal CRAN-like package repositories whether or not they publish packages on CRAN; R-universe builds and deploys packages from Git repositories into installation repositories. It also provides a continuous integration development environment without configuration to help identify potential breakage before release. WebAssembly binary support is experimental. Publishing a packages.json registry requires a GitHub account and the R-universe GitHub app, although package repositories may be hosted on other public Git servers such as GitLab. Unauthenticated APIs support listing universes and packages, retrieving package information, and searching. The service is free at free and is available through web, API, Linux, macOS, and Windows. rOpenSci initiated and governs the platform. R-universe does not vet packages; each universe owner is responsible for policies and quality control.

Visit r-universe.dev