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.21.tar.gz (84.0 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.21-py3-none-any.whl (22.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: fastloop-0.1.21.tar.gz
  • Upload date:
  • Size: 84.0 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.21.tar.gz
Algorithm Hash digest
SHA256 40ccfb3fa27c0517c3125bfd3e32a5b9c4384a709718b6be55c09c4e3e0700a4
MD5 ca2cd11107768640c1e13324233a0c42
BLAKE2b-256 55df09aca79191a65c6bfd24687e90196f1b39b8285b7e8dc2298f4b9855ce94

See more details on using hashes here.

File details

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

File metadata

  • Download URL: fastloop-0.1.21-py3-none-any.whl
  • Upload date:
  • Size: 22.5 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.21-py3-none-any.whl
Algorithm Hash digest
SHA256 341b09c693973f822591b5ba2a6b98220b8362d45e5f9590a23ce5a8f5495f04
MD5 c657dd8ec5ebec95deb54162dca40e50
BLAKE2b-256 20ff51cf156cfee544c1049ecee488ebd88c5820d403e6f9c996d6a04d66a303

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