This is a list of tasks that the Channels project needs doing that comes under the remit of Django's MOSS grant; anything on this page is eligible for funding via the grant with '''pre-approval''' from the Django MOSS committee; you'll get in touch with the committee, discuss the work and your history with open-source contribution (we strongly prefer that you have a proven track record on at least a few things) and the amount you'd like to be paid. If you're interested in working on one of these tasks, get in touch with Andrew Godwin as a first point of contact; he can help talk you through what's involved, and help judge/refine your proposal before it goes to the committee. Tasks not on the list can also be proposed; Andrew can help talk about them and if they would be sensible to do. Any work on Django, Daphne, asgiref or asgi_redis is eligible. == Tasks == High prority: * Full test suite for Daphne HTTP/WS encoding to ASGI * Tests for runserver and runworker [claimed] Medium priority: * Additional tutorials (written or video) * Scheduled task/delay interface server (https://github.com/andrewgodwin/channels/issues/115) * Automated load testing setup and runner based on AWS/Azure/etc (https://github.com/andrewgodwin/channels/issues/28) * In-page debugging help for websocket consumers (ideas and implementation needed) Low priority: * HTTP/2 support for Daphne (based on upcoming Twisted HTTP/2 support) (https://github.com/andrewgodwin/channels/issues/14) * Messaging (IRC/Slack/etc.) interface server and ASGI spec extension * Email interface server and ASGI spec extension * Port Daphne to run on asyncio or write a second ASGI HTTP/WS interface server on it == Completed Tasks == These have already been done and paid for: * Write specification for channel layer backends (ASGI) * Write reference memory-only backend * Write test ORM-driven backend * Write production-ready Redis backend * Write conformance test suite for specification * Write ASGI-compatible HTTP + WebSocket mixed-mode server * Write WebSocket benchmark suite * ASGIRequest subclass and decoding from ASGI * Response encoding to ASGI * ASGI-compatible Handler and path into view layer * Streaming and file response support * HTTP authentication support * Sessions based on reply channel not cookies * Channel session authentication support * Runserver integration with Daphne (inc. autoreload) * Routing system for channels similar to URLs * runworker command for running workers in production * Optional in-order enforcement for WebSocket consumers * Tutorial documentation * Deployment/Scaling documentation * Reference/Concepts documentation * Example projects (channels-examples) * Generic WebSocket and base consumers * Tests for file and streaming response handling inside Django