A modern Python web framework filled with asynchronous salsa.
Migrating from v0.13.x? Read the v0.14 release notes.
Bocadillo is a Python async web framework that makes server-side async web apps fun to build and accessible to everyone.
It is designed to be:
Productive: a carefully chosen set of included batteries helps you solve common and more advanced problems — request routing, app configuration, static files, data validation, and more!
Real-time capable: embrace asynchronous programming and the baked-in WebSocket and SSE support to build real-time, highly-concurrent systems.
Flexible: inject resources into web views using providers, an explicit, modular and easy-to-use mechanism inspired by pytest fixtures.
Empowering: use tailored testing and command line tools to build delicious, high-quality applications.
Transparent: every single feature is documented front to back and has optimal editor support thanks to a 100% type-annotated code base.
- Install Bocadillo and the Bocadillo CLI:
pip install bocadillo bocadillo-cli
- Generate a project and
bocadillo create hello cd hello/
- Edit the application script:
# hello/app.py from bocadillo import App app = App() @app.route("/") async def index(req, res): res.text = "Hello, world!"
- Start a uvicorn server (hot reload enabled!):
uvicorn hello.asgi:app --reload
- Say hello!
$ curl http://localhost:8000 Hello, world!
app.pyto send "Hello, Bocadillo!" instead, then hit save. Uvicorn will pick up the changes and restart the application. Try it out again:
$ curl http://localhost:8000 Hello, Bocadillo!
Tastes good! 🥪
Hungry for more? Head to the docs.
Found a bug? A typo? Want to help build a new feature? We'd love to see your contributions! There are also many ways to contribute that don't include code: helping with issues, laying out new ideas, improving docs, etc.
Check out our Contributing guide to get started.
By the way, here's our Contributor Hall of Fame. 👨💻👩💻
Logo designed by Florimond Manca. Sandwich icon designed by macrovector.
Release history Release notifications
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size & hash SHA256 hash help||File type||Python version||Upload date|
|bocadillo-0.15.1-py3-none-any.whl (68.5 kB) Copy SHA256 hash SHA256||Wheel||py3|
|bocadillo-0.15.1.tar.gz (45.0 kB) Copy SHA256 hash SHA256||Source||None|