Name | fastloop JSON |
Version |
0.1.20
JSON |
| download |
home_page | None |
Summary | A Python package for deploying stateful loops |
upload_time | 2025-07-14 01:30:15 |
maintainer | None |
docs_url | None |
author | None |
requires_python | >=3.12 |
license | MIT |
keywords |
agentic
ai
baml
workflow
|
VCS |
 |
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# FastLoop
A Python package for building and deploying stateful loops.
## Installation
```bash
pip install fastloop
```
## Usage
### Basic Example
```python
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.
```bash
# Install dependencies
uv sync
# Run tests
uv run pytest
# Build package
uv build
```
## License
[Add your license here]
Raw data
{
"_id": null,
"home_page": null,
"name": "fastloop",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.12",
"maintainer_email": null,
"keywords": "agentic, ai, baml, workflow",
"author": null,
"author_email": "Luke Lombardi <luke@beaml.cloud>",
"download_url": "https://files.pythonhosted.org/packages/b8/24/5c3a30b7de2aac42e6b1cc72275851fc862d97332dc1e166a01133ff7954/fastloop-0.1.20.tar.gz",
"platform": null,
"description": "# FastLoop\n\nA Python package for building and deploying stateful loops.\n\n## Installation\n\n```bash\npip install fastloop\n```\n\n## Usage\n\n### Basic Example\n\n```python\nfrom fastloop import FastLoop, LoopContext, LoopEvent\n\napp = FastLoop(name=\"my-app\")\n\n@app.event(\"start\")\nclass StartEvent(LoopEvent):\n user_id: str\n message: str\n\n@app.loop(name=\"chat\", start_event=StartEvent)\nasync def chat_loop(context: LoopContext):\n # Get the initial event\n start_event = await context.wait_for(StartEvent)\n print(f\"User {start_event.user_id} started chat: {start_event.message}\")\n \n # Your loop logic here\n context.stop()\n\nif __name__ == \"__main__\":\n app.run(port=8000)\n```\n\n## Development\n\nThis project uses `uv` for dependency management.\n\n```bash\n# Install dependencies\nuv sync\n\n# Run tests\nuv run pytest\n\n# Build package\nuv build\n```\n\n## License\n\n[Add your license here] ",
"bugtrack_url": null,
"license": "MIT",
"summary": "A Python package for deploying stateful loops",
"version": "0.1.20",
"project_urls": {
"Homepage": "https://github.com/beam-cloud/fastloop",
"Issues": "https://github.com/beam-cloud/fastloop/issues",
"Repository": "https://github.com/beam-cloud/fastloop"
},
"split_keywords": [
"agentic",
" ai",
" baml",
" workflow"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "ea4db84d8013732f6692b3db355c9d6b965fd22022af2c8bfa0d2233a84acc3b",
"md5": "5e543c804d83c79c5fb9686eb8fdf4cd",
"sha256": "a37fc255eaf795b68a9d345634436d58f00002aaad4f8eac397ca241880dd59a"
},
"downloads": -1,
"filename": "fastloop-0.1.20-py3-none-any.whl",
"has_sig": false,
"md5_digest": "5e543c804d83c79c5fb9686eb8fdf4cd",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.12",
"size": 22322,
"upload_time": "2025-07-14T01:30:13",
"upload_time_iso_8601": "2025-07-14T01:30:13.967763Z",
"url": "https://files.pythonhosted.org/packages/ea/4d/b84d8013732f6692b3db355c9d6b965fd22022af2c8bfa0d2233a84acc3b/fastloop-0.1.20-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "b8245c3a30b7de2aac42e6b1cc72275851fc862d97332dc1e166a01133ff7954",
"md5": "936d1df5dd6ce09883400d4a51aa2307",
"sha256": "2289812d1d8e71a89260965abb9c706b1d4d448f273bc6cc628e665c53b7db8b"
},
"downloads": -1,
"filename": "fastloop-0.1.20.tar.gz",
"has_sig": false,
"md5_digest": "936d1df5dd6ce09883400d4a51aa2307",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.12",
"size": 83868,
"upload_time": "2025-07-14T01:30:15",
"upload_time_iso_8601": "2025-07-14T01:30:15.255932Z",
"url": "https://files.pythonhosted.org/packages/b8/24/5c3a30b7de2aac42e6b1cc72275851fc862d97332dc1e166a01133ff7954/fastloop-0.1.20.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-14 01:30:15",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "beam-cloud",
"github_project": "fastloop",
"github_not_found": true,
"lcname": "fastloop"
}