Skip to main content

Start Contributing

What is my role?

By default we consider everyone that submits a pull request (PR) to be a contributor. People that contribute regularly and want to get more involved can become maintainers to help new contributors. People here for the long term are core maintainers and work on the core of the platform. Here is an overview of the roles

RolePaymentRequirementsTasks
🤙 ContributorBounty SystemSubmit a PRResolves issues by submitting pull requests
⚡️ MaintainerBounty SystemMinimum 3 merged PR's + chat with core maintainerReview basic PR's, help contributors & improve documentation
🔧 Core MaintainerHourly scaleMinimum 3 months maintainerReview complex PR's, improve code quality, devops, optimisations, security, general updates & documentation

🤙 Things that Contributors do:

Pick up issues

  1. Check our documentation to run it locally.
  2. Pick an open issue.
  3. If there is a bounty label on it you can claim a reward.
  4. Read our contribution guidelines.
  5. Bonus: Add tests.

⚡️ Things that Maintainers do:

Review incoming code from Contributors

  1. Validate if code is clean.
  2. Validate if the project structure is correct.
  3. Check out user profile to see who is behind the commit.
  4. Add them to our contributors list.
  5. Make sure Lint commit message is correct.
  6. Make sure all checks are passed and help to resolve errors.
  7. If there is a bounty label on the PR you can get it for reviewing.
  8. Bonus: Ask for integrating tests.

🔧 Things that Core Maintainers do:

Review complex PRs & release changes

There is a workflow for deploying code changes from development to production environments. It ensures proper review, testing, and versioning before reaching production sites.

The steps are as follows:

  • The PR is merged into the master branch.
  • master branch triggers an automated build and deployment to development environments.
  • A Release PR is automatically raised to merge master into the production branch.
  • Manual approval is required by a maintainer, then merge Release PR into production.
  • After merge, an automated build, versioning, and deployment to production sites.

Rewards:

Recognising Contributors

We have adopted all contributors and their tooling for managing the contributors listing on the project README.me.

After merging a new contributors PR:

  1. Add a comment to the merged PR mentioning the bot, contributor and their contribution type, for example: @all-contributors add @username for code.
  2. A PR will be automatically raised, example.
  3. The PR raised by the All Contributors bot will need to be merged with admin privileges as the required CI skips are deliberately skipped.

Payment

Each role gets paid a bit differently. Contributors and maintainers get paid according to the Bounty system. For core maintainers there is a separate hourly pay scale. Aimed at developers who help a bit more consistently at around 2-3 hours per week. If you're interested in these roles then feel free to reach out on Discord.

Onboarding checklist

Tasks🤙 Contributor⚡️ Maintainer🔧 Core Maintainer
Invite to Discord #development☑️☑️☑️
Send link to bounty system☑️☑️☑️
Add GitHub maintainer permissions☑️☑️
Add maintainer status using All contributors ☑️☑️
Get on a video call☑️☑️
Explain hourly rate vs bounty system☑️☑️
Add GitHub core maintainer permissions☑️
Add core-maintainer status using All contributors ☑️
Invite to Google Analytics☑️
Invite to Firebase projects: Precious Plastic PROD, Precious Plastic DEV, Project Kamp PROD, Project Kamp DEV, Fixing Fashion PROD, Fixing Fashion DEV☑️