Skip to main content

A Python package for deploying stateful loops

Project description

FastLoop

A Python package for building and deploying stateful loops.

Installation

pip install fastloop

Usage

Basic Example

from fastloop import FastLoop, LoopContext, LoopEvent

app = FastLoop(name="my-app")

@app.event("start")
class StartEvent(LoopEvent):
    user_id: str
    message: str

@app.loop(name="chat", start_event=StartEvent)
async def chat_loop(context: LoopContext):
    # Get the initial event
    start_event = await context.wait_for(StartEvent)
    print(f"User {start_event.user_id} started chat: {start_event.message}")
    
    # Your loop logic here
    context.stop()

if __name__ == "__main__":
    app.run(port=8000)

Development

This project uses uv for dependency management.

# Install dependencies
uv sync

# Run tests
uv run pytest

# Build package
uv build

License

[Add your license here]

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fastloop-0.1.16.tar.gz (83.3 kB view details)

Uploaded Source

Built Distribution

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

fastloop-0.1.16-py3-none-any.whl (21.6 kB view details)

Uploaded Python 3

File details

Details for the file fastloop-0.1.16.tar.gz.

File metadata

  • Download URL: fastloop-0.1.16.tar.gz
  • Upload date:
  • Size: 83.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for fastloop-0.1.16.tar.gz
Algorithm Hash digest
SHA256 4a8dca6cf33a7674a0439c98c3dd75af56d5b3e33cb6387e63b3954c7cfdc056
MD5 c490329e9849e06fd79ca4c4040a7b1c
BLAKE2b-256 c8dc94e90cfed8a2beb60d9cd4b3f4f960a012012dbc1a7a83b4b22d52d8e9d3

See more details on using hashes here.

File details

Details for the file fastloop-0.1.16-py3-none-any.whl.

File metadata

  • Download URL: fastloop-0.1.16-py3-none-any.whl
  • Upload date:
  • Size: 21.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for fastloop-0.1.16-py3-none-any.whl
Algorithm Hash digest
SHA256 67ef5775d51a441bb911f02a4c355e96a2a120e5931e95c9ecbade9ea10b95df
MD5 8554ad2903bcc3e4c1abc70d6237b740
BLAKE2b-256 e96e57eb762a4a7a4abf4e345b7b25290ba767fe680c27e4c002aa930333b0e4

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