--- id: django-eventstream version: "5.3.4" license: MIT license_treatment: permissive maintenance: active --- # django-eventstream — Server-Sent Events for Django License: permissive · Maintenance: active · Downloads: 84.3K/mo ## What it is and what it does Django EventStream is a Django app that streams data to connected clients using the Server-Sent Events protocol (SSE). Instead of clients polling for updates, they open a persistent HTTP connection and receive events as they occur. The package handles the streaming protocol, connection management, and event delivery, making it straightforward to add real-time capabilities to Django views. It supports per-user channel permissions, optional event persistence to the database for reliable delivery after disconnections, and integration with Django REST Framework. For scaling across multiple instances, it can use Redis or a GRIP proxy to coordinate event delivery. The package depends on Django, PyJWT, gripcontrol, django_grip, and six. Use it for: - Build a live notification feed where clients connect once and receive updates without polling. - Stream real-time data to multiple connected browsers as events occur on the server. - Implement a dashboard that updates automatically when backend data changes. - Send event notifications from Django views to connected clients with reliable delivery. - Create a live activity log or audit trail visible to multiple users simultaneously. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Adds Server-Sent Events (SSE) streaming to Django applications, allowing views to push data to connected clients over persistent HTTP connections. Yes, if you need real-time push notifications or live data streaming in Django without WebSockets. The package is actively maintained, has low install friction, uses a permissive MIT license, and requires only standard dependencies. It's well-suited for applications that need SSE but not the complexity of alternative infrastructure. Requires Python >=3.10. ## Install pip install django-eventstream uv add django-eventstream poetry add django-eventstream ## Installing django-eventstream Before you install: Low friction installation with a pure-Python wheel. Depends on Django, PyJWT, gripcontrol, django_grip, and six. Repository is active with recent commits and 865 stars; last release 77 days ago. License in practice: MIT license (permissive) allows commercial and private use with minimal restrictions; attribution required. Quickstart: pip install django-eventstream # In urls.py from django.urls import path, include import django_eventstream urlpatterns = [ path("events/", include(django_eventstream.urls), {"channels": ["test"]}), ] # Send events from django_eventstream import send_event send_event("test", "message", {"text": "hello world"}) Requires Python >=3.10. An ASGI server must be configured as ASGI_APPLICATION in settings.py for production deployment. Verify before relying: - Whether event storage persists for exactly 24 hours or if this is configurable. - Whether Redis integration requires additional setup beyond the EVENTSTREAM_REDIS setting. - Performance characteristics under high client connection counts or event throughput. - Which ASGI server is recommended or required for production deployment. ## Package facts - License: MIT (permissive) - Python support: supports_current - Install friction: low - Maintenance: active - Downloads: 84.3K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags django server-sent events, sse streaming django, real-time push notifications django, django event streaming, http long-polling django, django live data feed, persistent http connection django, real-time-streaming, sse [View on SkillFed](https://skillfed.io/packages/django-eventstream) · [View on PyPI](https://pypi.org/project/django-eventstream/)