NanoASGI: A Fast and Simple Python ASGI Framework

NanoASG

Asynchronous Python Web Framework


NanoASGI is a fast:zap:, simple and light:bulb:weight ASGI micro:microscope: web:earth_asia:-framework for Python:snake:. It is distributed as a single file module and has no dependencies other than the Python Standard Library.

Download and Install

Download :arrow_down: nanoasgi.py into your project directory. There are no hard dependencies other than the Python standard library. NanoASGI runs with Python versions above 3.7.

Or install via pip

pip install NanoASGI

Example

# example.py
from nanoasgi import App, Response

app = App()

@app.on('startup')
async def on_startup():
    print('Ready to serve requests')

@app.on('shutdown')
async def on_shutdown():
    print('Shutting down')

@app.route('GET', '/api/hello/{name}/')
async def hello_handler(request, name):
    return Response(
        {'result': f'Hello {name}!'},
        status=200,
        headers=[('Content-Type', 'application/json')],
    )

Then run your app with your favourite ASGI server.

uvicorn example:app

Status

GitHub license PyPI PyPI - License PyPI - Status PyPI - Format PyPI - Downloads PyPI - Wheel PyPI - Python Version

License

Code and documentation are available according to the MIT License:page_with_curl: (see LICENSE).


Download details:

Author: ksenginew
Source: https://github.com/ksenginew/nanoasgi

License: MIT license

#python 

NanoASGI: A Fast and Simple Python ASGI Framework
1.15 GEEK