💭 sysid/sse-starlette

!https://github.com/sysid/sse-starlette

GitHub - sysid/sse-FastAPI.">starlette
Contribute to sysid/sse-starlette development by creating an account on GitHub.
GitHub · github.com

sse-starlette provides server sent events for startlette and FastApi. I’m evaluating for use with htmx.

Installation: ¶ #

pip install sse-starlette

Usage: ¶ #

import asyncio
import uvicorn
from starlette.applications import Starlette
from starlette.routing import Route
from sse_starlette.sse import EventSourceResponse

async def numbers(minimum, maximum):
    for i in range(minimum, maximum + 1):
        await asyncio.sleep(0.9)
        yield dict(data=i)

async def sse(request):
    generator = numbers(1, 5)
    return EventSourceResponse(generator)

routes = [
    Route("/", endpoint=sse)
]

app = Starlette(debug=True, routes=routes)

if __name__ == "__main__":
    uvicorn.run(app, host="0.0.0.0", port=8000, log_level='info')

Note

This post is a thought. It’s a short note that I make about someone else’s content online #thoughts

Connections

Related tags and posts connected to this entry.