Metadata-Version: 2.3
Name: ventricle
Version: 0.0.10
Summary: An opinionated modern async server, worker and scheduler
Author: Bobby Lange
Author-email: info@robertlange.me
Requires-Python: >=3.10
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Requires-Dist: apscheduler (>=3.11.0,<4.0.0)
Requires-Dist: fastapi[standard] (>=0.117.1,<0.118.0)
Requires-Dist: uvicorn (>=0.37.0,<0.38.0)
Project-URL: Homepage, https://github.com/LangeRobert/ventricle
Description-Content-Type: text/markdown

# Ventricle

An async REST-server, scheduler and worker all in one. Highly customizable, as it is just wrapping other battle-tested libaries.

```python
from ventricle import Ventricle

app = Ventricle()

@app.worker()
async def hello_world_worker():
    print("I am actually just python threading")

@app.rest.get("/endpoint")
async def rest_endpoint():
    await hello_world_worker()
    return {"how": "I am actually just FastAPI"}

@app.scheduler.scheduled_job("cron", minute=0)
async def hourly_job():
    print("I am actually just APScheduler")

    
# start all of them
app.start(
    rest=True,
    schedular=True,
    worker=True
)
```
