Contributing

Thank you for your interest in improving Wagtail!

First-time contributors

  1. Read this document first.

  2. We don’t assign tasks. Feel free to pick any issue/task that isn’t already being worked on by someone else.

  3. Read the Your first contribution guide.

Issues

The easiest way to contribute to Wagtail is to tell us how to improve it! First, check to see if your bug or feature request has already been submitted at github.com/wagtail/wagtail/issues. If it has, and you have some supporting information that may help us deal with it, comment on the existing issue. If not, please create a new one, providing as much relevant context as possible. For example, if you’re experiencing problems with installation, detail your environment and the steps you’ve already taken. If something isn’t displaying correctly, tell us what browser you’re using, and include a screenshot if possible.

If your bug report is a security issue, do not report it with an issue. Please read our guide to reporting security issues.

Please do not use the issue tracker for support queries - use the ‘wagtail’ tag on Stack Overflow (preferred) or the #support channel on the Wagtail Slack.

If you’d like to discuss an idea before requesting it, use the Wagtail Slack or Discussions.

For further information about how issues are handled, see Issue tracking.

Pull requests

If you are just getting started with development and have never contributed to an open-source project, we recommend you read the Your first contribution guide. If you’re a confident Python or Django developer, fork it and read the developing docs to get stuck in!

We welcome all contributions, whether they solve problems that are specific to you or they address existing issues. If you’re stuck for ideas, pick something from the issue list - you might like to start by checking issues with the good first issue label. There is no need to ask “please assign me this issue”, but feel free to leave a comment outlining your plans so that other people know you’re working on it.

For large-scale changes, we’d generally recommend breaking them down into smaller pull requests that achieve a single well-defined task and can be reviewed individually. If this isn’t possible, we recommend opening a pull request on the Wagtail RFCs repository, so that there’s a chance for the community to discuss the change before it gets implemented.

Translations

Wagtail has internationalization support so if you are fluent in a non-English language you can contribute by localizing the interface.

Translation work should be submitted through Transifex. For information on how to get started see Translations.

Code reviews

We welcome code reviews from everyone, although a core team member will need to do at least one review for the pull request to be merged. There’s always a list of pull requests tagged status:Needs Review.

Triaging issues

We welcome help with triaging issues and pull requests. You can help by:

  • Adding more details or your own perspective to bug reports or feature requests.

  • Attempting to reproduce issues tagged status:Unconfirmed and sharing your findings.

  • Reviewing or otherwise offering your feedback on pull requests.

View our issue tracking guidelines for more information.

Accessibility testing

We’d love to get feedback on the accessibility of Wagtail. Get in touch with our accessibility team if you are testing Wagtail and want to report your findings, or have a look at our backlog of accessibility issues and improvements. We also document our testing targets and known issues.

Other contributions

There are many more ways to contribute to the Wagtail community, through code or otherwise:

Developing packages for Wagtail

If you are developing packages for Wagtail, you can add the following PyPI classifiers:

You can also find a curated list of awesome packages, articles, and other cool resources from the Wagtail community at Awesome Wagtail.

More information