{"categories":[{"label":"Utilities","url":"https://skillfed.io/packages/category/utilities/11"}],"enrichment":{"capability":"Integrates Django with GRIP-compatible proxies (Pushpin, Fastly Fanout) to delegate long-lived HTTP and WebSocket connection management away from the application.","skillfed_tags":["real-time","proxy-delegation","websocket-over-http"],"use_cases":["Build HTTP streaming endpoints that push data to many clients without blocking Django worker processes","Implement long-polling endpoints that hold client requests until data changes, then deliver updates efficiently","Create WebSocket-like bidirectional communication in Django without running a separate WebSocket server","Scale real-time features across multiple Django instances by offloading connection management to a proxy layer","Reduce memory and CPU overhead by delegating connection hold-time to a specialized proxy"],"what_it_does":"Django GRIP is middleware that bridges Django applications with external GRIP-compatible proxies like Pushpin or Fastly Fanout. Instead of holding connections in your Django process, the middleware delegates long-lived HTTP and WebSocket connections to a specialized proxy, freeing your application to handle requests more efficiently. The proxy manages the actual connection lifetime while your Django views respond quickly and let the middleware handle the protocol translation.\n\nYou configure it by adding GripMiddleware to your Django settings and pointing it at your GRIP proxy via GRIP_URL. Your views then use helper functions to subscribe clients to channels or broadcast updates. The middleware handles parsing GRIP headers, converting WebSocket-Over-HTTP events, and managing subscriptions\u2014your code sees a simplified interface while the proxy handles the heavy lifting of keeping connections alive.","worth_installing":"Yes, if you have a GRIP proxy (Pushpin or Fastly Fanout) already deployed and need to add real-time features to Django. The middleware is straightforward to integrate and offloads connection management cleanly. No, if you lack the proxy infrastructure or prefer a self-contained solution\u2014the external dependency is non-negotiable. The aging release cycle (508 days since last update) is acceptable for stable middleware but warrants checking compatibility with your Django version before committing."},"id":"django-grip","links":{"html":"https://skillfed.io/packages/django-grip","md":"https://skillfed.io/packages/django-grip.md","pypi":"https://pypi.org/project/django-grip/"},"maintenance":{"status":"aging"},"meta":{"latest_release":"2025-03-24","license_spdx":null,"license_treatment":"permissive","name":"django-grip","python_support":"unspecified","summary":"Django GRIP library"},"popularity":{"monthly_downloads":78183,"position":14463,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"3.5.2"}
