Skip to main content

A lightweight, readable Python API framework. Simple by design.

Project description

Bamboo

A lightweight, readable Python API framework. Simple by design.

Bamboo is an ASGI micro-framework you can read in one sitting and fully understand. No magic. No hidden complexity. Just clean, honest Python.

Install

pip install bambooapi-framework

Quickstart

from bambooapi import Bamboo, Response

app = Bamboo()

@app.get("/")
async def home(request):
    """Welcome message."""
    return {"message": "Hello from Bamboo"}

@app.post("/notes")
async def create_note(request):
    """Create a note."""
    data = await request.json()
    return Response({"note": data}, status=201)

Run it:

uvicorn myapp:app

Then visit http://localhost:8000/docs for the interactive API docs.

Features

  • GET, POST, PUT, DELETE routing
  • Path parameters: /notes/{note_id}
  • Async request body and JSON parsing
  • Auto-generated OpenAPI spec at /openapi.json
  • Interactive docs page at /docs
  • Zero dependencies beyond an ASGI server

Philosophy

The entire framework fits in one file you can read in an afternoon. If you can read it, you can understand it. If you can understand it, you can trust it.

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bamboo_framework-0.1.6.tar.gz (9.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

bamboo_framework-0.1.6-py3-none-any.whl (8.9 kB view details)

Uploaded Python 3

File details

Details for the file bamboo_framework-0.1.6.tar.gz.

File metadata

  • Download URL: bamboo_framework-0.1.6.tar.gz
  • Upload date:
  • Size: 9.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for bamboo_framework-0.1.6.tar.gz
Algorithm Hash digest
SHA256 8c0efc44def9c2b777da6b5987a96dcdb18c56b0afa8ba7cee2f87d9df9b63fa
MD5 0da34a53557414046cc815ee1bf81d96
BLAKE2b-256 5a81dd500eb0add36805de4269d52cb94e24ef650e244af665f5f392171ef567

See more details on using hashes here.

File details

Details for the file bamboo_framework-0.1.6-py3-none-any.whl.

File metadata

File hashes

Hashes for bamboo_framework-0.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 63acccab265e4c60cdddd7cc5634692a3a95053fc01e661ef6d382f1dfd30e54
MD5 74a99c19e4782dc0a8e72b1cf41832c9
BLAKE2b-256 418f036583140f94b4b2c6f121622df36e9c4cf419518f04273a11028fb21b1b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page