Thanks for contributing to Fides! This section of the docs is designed to help you become familiar with how we work, the standards we apply, and how to ensure your contribution is successful.
If you're stuck, don't be shy about asking for help on GitHub (opens in a new tab).
The first step is to clone the Fides repo for development:
git clone https://github.com/ethyca/fides
Once that's complete, there are a few different ways to spin up the project and get coding!
There are a few different ways to develop Fides, they are listed below in order of how strongly they are recommended!
- The recommended way to work on Fides is by utilizing the
- Make sure that you have
pip install nox) installed.
noxin the root directory to see a list of all of the possible Nox commands. This is helpful as a reference when trying to find new commands or remember old ones!
nox -s dev -- shellto spin up the entire
fidesapplication as well as a shell within the
- You can and should run all of your various development commands from within this shell, such as
- Make sure that you have
- While it is possible to install all application dependencies and develop on the project without Docker, this is neither recommended nor tested.
MSSQL: Known issues around connecting to MSSQL exist today for Apple M1 users. M1 users that wish to install
pyodbclocally, please reference the workaround here (opens in a new tab).
Package not found: When running
nox -s dev, if you get a
importlib.metadata.PackageNotFoundError: fides, do
nox -s dev -- shell, and then run
pip install -e .. Verify Fides is installed with
We have no doubt you can write amazing code! However, we want to help you ensure your code plays nicely with the rest of the Fides ecosystem. Many projects describe code style and documentation as a suggestion; in Fides it's a CI-checked requirement.
- To learn how to style your code, see the style guide.
- To learn how to migrate the database schema, see the database migration guide.
- To learn how to document your code, see the docs guide.
- To learn how to test your code, see the tests guide.
- To learn what format your PR should follow, make sure to follow the pull request guidelines.
In order to submit code to Fides, please:
- Fork the Fides repository (opens in a new tab)
- Create a new branch (opens in a new tab) on your fork
- Open a Pull Request (opens in a new tab) once your work is ready for review
- Once automated tests have passed, a maintainer will review your PR and provide feedback on any changes it requires to be approved. Once approved, your PR will be merged into Fides.
You're a Fides contributor - welcome to the team! 🎉