Skip to content

Contributing to this repo

Laurens Debackere edited this page May 8, 2021 · 1 revision

The Federal Parliament Scraper and API are maintained by an active group of volunteers, this repo is the main hub for orchestrating our efforts. Please be aware that upon contributing to the code in this repository (either directly or through a PR) you agree to the redistribution and modification of you code under the MIT license.

How to contribute?

Depending on whether you've actively contributed to this repo before (and thus were granted direct write privileges) or not, the procedure for contributing differs slightly.

For new external contributors

  1. Create a fork of this repository on your personal account.
  2. Do your work on the 'dev' branch in this forked repository.
  3. Verifying your work with the build.py script (as is used in our production builds) can be very useful to do in advance.
  4. Open a PR on the Parliament-in-Data/Federal-Parliament-Scraper repository. This PR should be for the dev branch as well.
  5. Explain your changes and mention relevant issues so we know what you've been working on.
  6. After a code review, your changes will be merged to dev to validate them in a production-like environment. A new PR will be opened by one of our regular contributors and merged into main if the deployment is successful.

For internal (regular) contributors

  1. Work on a separate feature-branch (preferably use a naming-scheme like feature/brief-description)
  2. Write your code, again you can locally verify using build.py.
  3. Open a PR (or you can open a Draft PR earlier on as well)
  4. Merge into dev and validate the deployment works.
  5. Open a PR for main to deploy to production.

Environments

Our repository currently provides two environments to contributors, firstly a production environment hosted at https://parlement.thundr.be and secondly a development environment hosted at https://parlement-dev.thundr.be. These environments are functionally identical for the most part, except for the fact that the development environment disables all caching to allow quicker propagation of changes.