A meta-package manager for all porridges
Porringer
A CLI and Python API for synchronizing developer environments from a declarative manifest. Porringer reads the packages, tools, runtimes, repositories, and project install work you want, then delegates the actual work to installed package managers through plugins.
Features
- Manifest-driven setup from
porringer.jsonor[tool.porringer]inpyproject.toml. - Plugin-based installers for Python, Node, system packages, project install, runtimes, and source repositories.
- Read-only previews with stable action IDs, command previews, diagnostics, and JSON output.
- Sync strategies for minimal installs or latest allowed versions.
- JSONL progress streams, replay records, and trace artifacts for downstream clients.
- Python APIs for inspection, execution, profiles, tools, progress events, and client snapshots.
Quick Start
Install Porringer into an isolated CLI environment, then preview a manifest before running it:
pipx install porringer
porringer preview examples/python-dev
porringer install examples/python-dev
See Setup for uv, pip, and development checkout instructions.
Development
Porringer uses PDM for local development. Common tasks are defined in pyproject.toml under [tool.pdm.scripts]:
pdm install
pdm run test
pdm run generate
See Development for test lanes, traces, smoke tests, and diagnostics.
For contribution guidelines, see CONTRIBUTING.md.
Documentation
- Documentation home
- Setup
- Install links
- Install command
- Preview command
- Check command
- Download command
- API surface
- Development
License
This project is licensed under the MIT License. See LICENSE.md for details.
Copyright © 2025 Synodic Software
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file porringer-0.3.1.tar.gz.
File metadata
- Download URL: porringer-0.3.1.tar.gz
- Upload date:
- Size: 310.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ec64dca7d411955ef02ffb95a3596a1bfd2ef4c4fb9f9d5db01898a2a38afe3c
|
|
| MD5 |
1a0d0a3dd479617e25626ab1de01c52d
|
|
| BLAKE2b-256 |
b6eebb2cdd1eefef2922d31e6ae2762626e7f6734fba82757ca876f94831a5c4
|
File details
Details for the file porringer-0.3.1-py3-none-any.whl.
File metadata
- Download URL: porringer-0.3.1-py3-none-any.whl
- Upload date:
- Size: 235.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6470ad402b2f2c69b2ee671baf3c876d9f0553e9d0dcf292d572c8dc092cd38e
|
|
| MD5 |
3649ba554f45afe909020cd1c43ded4b
|
|
| BLAKE2b-256 |
2de532496c17e97488c2d877c01db9d68f42fe88bbd86e818cc607d48615eccf
|