Skip to main content

A web interface to browse and search packages in any simple package repository (PEP-503), inspired by PyPI / warehouse

Project description

simple-repository-browser

A web interface to browse and search packages in any simple package repository (PEP-503), inspired by PyPI / warehouse.

Built using FastAPI and the simple-repository core library.

Usage

Install from PyPI:

python -m pip install simple-repository-browser

And run:

simple-repository-browser

(or alternatively python -m simple_repository_browser)

By default, this will use the repository at PyPI (https://pypi-hypernode.com/simple/). You can point it to a custom repository by passing the URL to the project list endpoint (the base URL according to PEP-503):

simple-repository-browser https://my-custom-repository.example.com/foo/simple/

Screenshots:

Homepage:

homepage screenshot

Search:

search result

Project page:

example project page

Runtime details

simple-repository-browser exposes a FastAPI application, and it runs the application in a single uvicorn worker. Metadata that is computed will be cached in the $XDG_CACHE_DIR/simple-repository-browser directory. This cache is not intended to be shared among different repository URLs, and is unlikely to work for multiple simple-repository-browser versions. There is currently no intelligent cache invalidation for those cases.

Development

In order to build the simple-repository-browser, first:

cd javascript
npm install --include=dev
npm run build
cd ..

And then the normal installation procedure applies:

python -m pip install -e .

The browser can be run with:

python -m simple_repository_browser

License and Support

This code has been released under the MIT license. It is an initial prototype which is developed in-house, and not currently openly developed.

It is hoped that the release of this prototype will trigger interest from other parties that have similar needs. With sufficient collaborative interest there is the potential for the project to be openly developed, and to power Python package repositories across many domains.

Please get in touch at https://github.com/orgs/simple-repository/discussions to share how this project may be useful to you. This will help us to gauge the level of interest and provide valuable insight when deciding whether to commit future resources to the project.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

simple_repository_browser-0.5.1.tar.gz (1.0 MB view details)

Uploaded Source

Built Distribution

simple_repository_browser-0.5.1-py3-none-any.whl (403.4 kB view details)

Uploaded Python 3

File details

Details for the file simple_repository_browser-0.5.1.tar.gz.

File metadata

File hashes

Hashes for simple_repository_browser-0.5.1.tar.gz
Algorithm Hash digest
SHA256 c360242ac4d1b0a85acfa604229a62fbb9a4699d4c70061011bc7c68289c943e
MD5 ac83e99eb30bcbae23160b44efe058a2
BLAKE2b-256 1c3d5b4387b08c8fd730bd28fd512809b50f84dfa8eb14e53b5396865e2aa8fa

See more details on using hashes here.

File details

Details for the file simple_repository_browser-0.5.1-py3-none-any.whl.

File metadata

File hashes

Hashes for simple_repository_browser-0.5.1-py3-none-any.whl
Algorithm Hash digest
SHA256 08abda0e96d132c33588b77ffca94c392722b60bd930c372806f19300ba473b4
MD5 39f83dfaf90868943f91d80dad2fc5cd
BLAKE2b-256 6369bfcd004dad9034f83e1ed36112cacfe926178b2d6167910acf5a49a49d6d

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page