mirror of
https://github.com/django/daphne.git
synced 2025-04-30 21:53:50 +03:00
81 lines
3.7 KiB
ReStructuredText
81 lines
3.7 KiB
ReStructuredText
Contributing
|
|
============
|
|
|
|
If you're looking to contribute to Channels, then please read on - we encourage
|
|
contributions both large and small, from both novice and seasoned developers.
|
|
|
|
|
|
What can I work on?
|
|
-------------------
|
|
|
|
We're looking for help with the following areas:
|
|
|
|
* Documentation and tutorial writing
|
|
* Bugfixing and testing
|
|
* Feature polish and occasional new feature design
|
|
* Case studies and writeups
|
|
|
|
You can find what we're looking to work on in the GitHub issues list for each
|
|
of the Channels sub-projects:
|
|
|
|
* `Channels issues <https://github.com/django/channels/issues/>`_, for the Django integration and overall project efforts
|
|
* `Daphne issues <https://github.com/django/daphne/issues/>`_, for the HTTP and Websocket termination
|
|
* `asgiref issues <https://github.com/django/asgiref/issues/>`_, for the base ASGI library/memory backend
|
|
* `asgi_redis issues <https://github.com/django/asgi_redis/issues/>`_, for the Redis channel backend
|
|
* `asgi_ipc issues <https://github.com/django/asgi_ipc/issues/>`_, for the POSIX IPC channel backend
|
|
|
|
Issues are categorized by difficulty level:
|
|
|
|
* ``exp/beginner``: Easy issues suitable for a first-time contributor.
|
|
* ``exp/intermediate``: Moderate issues that need skill and a day or two to solve.
|
|
* ``exp/advanced``: Difficult issues that require expertise and potentially weeks of work.
|
|
|
|
They are also classified by type:
|
|
|
|
* ``documentation``: Documentation issues. Pick these if you want to help us by writing docs.
|
|
* ``bug``: A bug in existing code. Usually easier for beginners as there's a defined thing to fix.
|
|
* ``enhancement``: A new feature for the code; may be a bit more open-ended.
|
|
|
|
You should filter the issues list by the experience level and type of work
|
|
you'd like to do, and then if you want to take something on leave a comment
|
|
and assign yourself to it. If you want advice about how to take on a bug,
|
|
leave a comment asking about it, or pop into the IRC channel at
|
|
``#django-channels`` on Freenode and we'll be happy to help.
|
|
|
|
The issues are also just a suggested list - any offer to help is welcome as long
|
|
as it fits the project goals, but you should make an issue for the thing you
|
|
wish to do and discuss it first if it's relatively large (but if you just found
|
|
a small bug and want to fix it, sending us a pull request straight away is fine).
|
|
|
|
|
|
I'm a novice contributor/developer - can I help?
|
|
------------------------------------------------
|
|
|
|
Of course! The issues labelled with ``exp/beginner`` are a perfect place to
|
|
get started, as they're usually small and well defined. If you want help with
|
|
one of them, pop into the IRC channel at ``#django-channels`` on Freenode or
|
|
get in touch with Andrew directly at andrew@aeracode.org.
|
|
|
|
|
|
Can you pay me for my time?
|
|
---------------------------
|
|
|
|
Thanks to Mozilla, we have a reasonable budget to pay people for their time
|
|
working on all of the above sorts of tasks and more. Generally, we'd prefer
|
|
to fund larger projects (you can find these labelled as ``epic-project`` in the
|
|
issues lists) to reduce the administrative overhead, but we're open to any
|
|
proposal.
|
|
|
|
If you're interested in working on something and being paid, you'll need to
|
|
draw up a short proposal and 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 (andrew@aeracode.org) 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 any issues list can also be proposed; Andrew can help talk about them
|
|
and if they would be sensible to do.
|