Skip to main content

Build status Test coverage License @bocadillopy on Twitter Say Thanks!

python versions pypi version code style

Documentation · Source code · CLI


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.

  • Performant: squeeze the juice out of Starlette and uvicorn, the lightning-fast ASGI toolkit and web server.

  • 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.

Quick start

  1. Install Bocadillo and the Bocadillo CLI:
pip install bocadillo bocadillo-cli
  1. Generate a project and cd into it:
bocadillo create hello
cd hello/
  1. Edit the application script:
# hello/app.py
from bocadillo import App

app = App()

@app.route("/")
async def index(req, res):
    res.text = "Hello, world!"
  1. Start a uvicorn server (hot reload enabled!):
uvicorn hello.asgi:app --reload
  1. Say hello!
$ curl http://localhost:8000
Hello, world!
  1. Edit app.py to 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.

Changelog

We record changes to Bocadillo in the changelog. In particular, check out the Unreleased section to see what's coming in the next release.

Contributing

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. 👨‍💻👩‍💻

Credits

Logo designed by Florimond Manca. Sandwich icon designed by macrovector.

Metadata

Release files for bocadillo 0.16.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for bocadillo 0.16.1
File Size Uploaded
bocadillo-0.16.1.tar.gz 45.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for bocadillo 0.16.1
File Interpreter ABI Platform
bocadillo-0.16.1-py3-none-any.whl Python 3 none any Details

Total release size: 114.5 kB

Release files / bocadillo-0.16.1.tar.gz

Download URL bocadillo-0.16.1.tar.gz
Size 45.3 kB
Tags Source
SHA-256 checksum
How to use checksums
d0ca9e487d054a49371cfd985a27470f881e8c46033d5a497570c726690dbf2f
BLAKE2b-256 checksum
How to use checksums
5e23130d739ab88f388731b76ade01b23e9e3696483957240fb61784337e108a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.6.7

Release files / bocadillo-0.16.1-py3-none-any.whl

Download URL bocadillo-0.16.1-py3-none-any.whl
Size 69.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
4d2f6279a33ff5947023620f12d51f0d78bdeb68777246381284e6e9f26e0421
BLAKE2b-256 checksum
How to use checksums
9ce05dac284162c1f42168eae479d278dfd0c2a1393f11357f5a0188831105e8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.6.7

Release history Release notifications | RSS feed

0.18.3

2 release files

0.17.0

2 release files

0.16.2

2 release files

This release

0.16.1 This release

2 release files

0.15.1

2 release files

0.15.0

2 release files

0.14.2

2 release files

0.14.1

2 release files

0.14.0

2 release files

0.13.3

2 release files

0.13.2

2 release files

0.13.1

2 release files

0.13.0

2 release files

0.12.1

2 release files

0.12.0

2 release files

0.11.2

2 release files

0.11.1

2 release files

0.11.0

2 release files

0.10.2

2 release files

0.10.1

2 release files

0.10.0

2 release files

0.9.1

2 release files

0.9.0

2 release files

0.8.1

2 release files

0.8.0

2 release files

0.7.0

2 release files

0.6.1

2 release files

0.6.0

2 release files

0.5.0

2 release files

0.4.0

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page