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

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.1.tar.gz (7.6 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.1-py3-none-any.whl (7.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: bamboo_framework-0.1.1.tar.gz
  • Upload date:
  • Size: 7.6 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.1.tar.gz
Algorithm Hash digest
SHA256 f6c1bc3bed328de424e5e6a8425770d3cefd4b16f1115159d38a7f95abe0761d
MD5 d3b3a26ac12bbb0315faaa7c910a5d71
BLAKE2b-256 b3f619e27290e7f1391ff1b4633277b0e6ade672438d2636d2d804469d71bdb3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for bamboo_framework-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 94db8632e6cd353ab8b1a38c16fcb6be1efc2341a537cc407235b85039409249
MD5 f593d4ca91f086cc5e5606752c73c8fd
BLAKE2b-256 f5d857d54269fc09c606e95c0b73996fb4d10f49a72c91ca8b0a748ad9ea68f6

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