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

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.2.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.2-py3-none-any.whl (9.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: asyncfast-0.15.2.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.2.tar.gz
Algorithm Hash digest
SHA256 8b1dfe99f1d967e639be486e7d57d821cbce6e1e1277151c58687fdb92894c43
MD5 708022c040d6873a1bd7335f16b302c0
BLAKE2b-256 59a4bd8a31206484cec8376122063745e9ebb4bffa38dda70277911891e023a2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for asyncfast-0.15.2-py3-none-any.whl
Algorithm Hash digest
SHA256 6ba2b7d66ffadcfcba76af4de2d3445fb9bc092bf1ff1718c1626f3e24127b2d
MD5 a8ea1fd5b1bd5704d100e7e95d23c186
BLAKE2b-256 5bcafa17f5317ad9aa5417f19d5e099fe36e3648e0e2deed7dce3d070b4d303a

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