Welcome to the Great Expectations project! We’re very glad you want to help out by contributing.

Our goal is to make your experience as great as possible. Please follow these steps to contribute:

1 Join the community on Slack

Go to and introduce yourself in the #contributors-contributing channel.

2 Set up your development environment

Follow these instructions to set up your dev environment.

Alternatively, for small changes that don’t need to be tested locally (e.g. documentation changes), you can make changes directly through Github.

3 Identify the type of contribution that you want to make

Issues in GitHub are a great place to start. Check out the help wanted and good first issue labels. Comment to let everyone know you’re working on it.

If there’s no issue for what you want to work on, please create one. Add a comment to let everyone know that you’re working on it. We prefer small, incremental commits, because it makes the thought process behind changes easier to review.

Some Expectations are implemented in the core library. Many others are contributed by the community of data practitioners that bring their domain knowledge and share it as Expectations. This how-to guide will walk you through the steps required to develop and contribute a new Expectation.

Our Levels of maturity grid provides guidelines for how the maintainers of Great Expectations evaluate levels of maturity of a feature.

4 Start developing

Make sure to reference the Style Guide and instructions on Testing when developing your code. When your changes are ready, run through our Contribution checklist for pull requests.

Note that if it’s your first contribution, there is a standard Contributor license agreement (CLA) to sign.