Skip to main content

Add your description here

Project description

AsyncFast

AsyncFast is a modern, event framework for building APIs with Python based on standard Python type hints.

Installation

pip install asyncfast==0.13.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.13.1.tar.gz (7.1 kB view details)

Uploaded Source

Built Distribution

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

asyncfast-0.13.1-py3-none-any.whl (8.4 kB view details)

Uploaded Python 3

File details

Details for the file asyncfast-0.13.1.tar.gz.

File metadata

  • Download URL: asyncfast-0.13.1.tar.gz
  • Upload date:
  • Size: 7.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.17

File hashes

Hashes for asyncfast-0.13.1.tar.gz
Algorithm Hash digest
SHA256 836e405de621ce05984ee4f52d4889d68d8516b7fbaab5838585cb5ca9da0074
MD5 a620cd899e8a66574e495f4dea31efef
BLAKE2b-256 82ea9d0424bae70c02f38fe74d2e269cf994c5887e93776883d365523e653832

See more details on using hashes here.

File details

Details for the file asyncfast-0.13.1-py3-none-any.whl.

File metadata

  • Download URL: asyncfast-0.13.1-py3-none-any.whl
  • Upload date:
  • Size: 8.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.17

File hashes

Hashes for asyncfast-0.13.1-py3-none-any.whl
Algorithm Hash digest
SHA256 871d7d967b7b695f30a727b63044e95e9b238ed28e77c73ec94f7797303e63b9
MD5 a7dc8d60175fab023fc09f69318f822e
BLAKE2b-256 cbbcfbbf35ae89a0b9080fdd597e53262c0bf12ee05645f835cd4c0605395984

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