Prerequisites
- Python 3.14+ (free-threading build recommended for thread-based workers)
Note
Pounce works on both GIL and free-threading builds. On GIL builds, multi-worker mode uses processes instead of threads — same API, same config.
Install
uv add bengal-pounce
pip install bengal-pounce
git clone https://github.com/lbliii/pounce.git
cd pounce
uv sync --group dev
Optional Extras
Pounce ships with one dependency (h11for HTTP/1.1). Additional protocols are optional extras:
| Extra | Provides | Install |
|---|---|---|
h2 |
HTTP/2 support (stream multiplexing, priority signals) | pip install bengal-pounce[h2] |
ws |
WebSocket support (including WS over H2) | pip install bengal-pounce[ws] |
tls |
TLS termination via truststore | pip install bengal-pounce[tls] |
fast |
C-accelerated HTTP/1.1 via httptools | pip install bengal-pounce[fast] |
full |
All protocols (h2 + ws + tls) | pip install bengal-pounce[full] |
# Install with all protocol support
uv add "bengal-pounce[full]"
Verify
pounce --help
You should see the CLI help output with available options. If you see a pounce: command not found error, ensure your Python scripts directory is on your PATH.
Next Steps
- Quickstart — Serve your first app
- CLI Reference — All command-line options