Introduction
BustAPI is a paradigm shift for Python web development. It is designed to solve a specific problem: How can we have the developer ergonomics of Flask with the performance characteristics of a compiled language?
Write Python for logic. Let Rust handle the heavy lifting of HTTP parsing, routing, and thread management.
Architecture
Unlike traditional Python frameworks that run entirely in the Python Virtual Machine, BustAPI keeps the "hot path" in Rust. When a request hits your server:
- Rust: Accepts the TCP connection.
- Rust: Parses the HTTP bytes into a structured request object.
- Rust: Matches the URL against the routing table.
- Python: Only then is the Python interpreter invoked to run your specific view function.
Compatibility
We aim for high compatibility with the Flask API surface. If you know Flask, you know 90% of
BustAPI.
However, we differ where modern practices offer a better way (e.g., using Type Hints for validation
instead of wtforms).
Installation
Get started immediately via pip.
pip install bustapi
BustAPI provides pre-compiled wheels for Linux (x86_64, aarch64), macOS (x86_64, arm64), and Windows. If you are on an unsupported platform, you will need a Rust compiler installed.
BustAPI