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.15.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.15.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.

asyncfast-0.15.1-py3-none-any.whl (9.2 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for asyncfast-0.15.1.tar.gz
Algorithm Hash digest
SHA256 e193485d70e859053100566f06901ae0ff58a2efdd1de2b13df15593dd361e57
MD5 750f62f3f0c499aa9b0e8b115b7c381c
BLAKE2b-256 cc4671e92c5583538758d0adeeb1ed5d0fb677a7c3ca92f3b6f3191222151536

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for asyncfast-0.15.1-py3-none-any.whl
Algorithm Hash digest
SHA256 b9438f826bcbb86f4a496a0d621e03000f7b224655cb696ed7ba67415544e2bc
MD5 4aada315cff033b3110f0d3a2ca5717c
BLAKE2b-256 a4c4d026ad486e39114720f5754dfa928d3e0ec304b9c305e21a24a57e6e3437

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