AsyncFast
AsyncFast is a modern, event framework for building APIs with Python based on standard Python type hints.
Installation
pip install asyncfast==0.45.1
Example
Create a file main.py with:
from asyncfast import AsyncFast
from pydantic import BaseModel
app = AsyncFast()
class Payload(BaseModel):
id: str
name: str
@app.channel("topic")
async def on_topic(payload: Payload) -> None:
print(payload)
Running
To run the app install an AMGI server (at the moment there is only amgi-aiokafka) then run:
$ asyncfast run amgi-aiokafka main:app topic
AsyncAPI Generation
$ asyncfast asyncapi main:app
{
"asyncapi": "3.0.0",
"info": {
"title": "AsyncFast",
"version": "0.1.0"
},
"channels": {
"OnTopic": {
"address": "topic",
"messages": {
"OnTopicMessage": {
"$ref": "#/components/messages/OnTopicMessage"
}
}
}
},
"operations": {
"receiveOnTopic": {
"action": "receive",
"channel": {
"$ref": "#/channels/OnTopic"
}
}
},
"components": {
"messages": {
"OnTopicMessage": {
"payload": {
"$ref": "#/components/schemas/Payload"
}
}
},
"schemas": {
"Payload": {
"properties": {
"id": {
"title": "Id",
"type": "string"
},
"name": {
"title": "Name",
"type": "string"
}
},
"required": [
"id",
"name"
],
"title": "Payload",
"type": "object"
}
}
}
}
Contact
For questions or suggestions, please contact jack.burridge@mail.com.
License
Copyright 2025 AMGI
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
asyncfast-0.45.1.tar.gz
(11.5 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file asyncfast-0.45.1.tar.gz.
File metadata
- Download URL: asyncfast-0.45.1.tar.gz
- Upload date:
- Size: 11.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4493de4d00a0053a87e0612a50bc9ebff1121029ef68ca6c2ee915020a82f48c
|
|
| MD5 |
c57ad2e9af33ac6eee83fc5f95490eb0
|
|
| BLAKE2b-256 |
439ec45d4e36d12ccdb1385c8f52e79abd3462cc7227166db3c543f8e9c4a4b7
|
File details
Details for the file asyncfast-0.45.1-py3-none-any.whl.
File metadata
- Download URL: asyncfast-0.45.1-py3-none-any.whl
- Upload date:
- Size: 16.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5964ace419188fccd71663fbeb8b37f0fcda06ddd1f70289ada30bd1e02257a7
|
|
| MD5 |
02bfa42df056864a78a76fd5172943c7
|
|
| BLAKE2b-256 |
aae5b9063ae9e2174a9302c1480325a281840e7ce3c958935f8784ab4bffa904
|