Hi! Thanks for checking out how to contribute to MapComplete!
There are multiple ways to contribute:
- Translating MapComplete to your own language can be done on the Weblate website
- If you encounter a bug, the issue tracker is the place to be
- A good start to contribute is to create a single map layer showing features which interest you. Read more about making your own theme.
- Feel free to hop in our chat channel on matrix
- If you want to improve a theme, create a new theme, spot a typo in the repo... the best way is to open a pull request.
People who stick around and contribute in a meaningful way, might be granted write access to the repository (except the branches master and develop). This is done on a purely subjective basis, e.g. after a few pull requests and if you are a member of the OSM community.
If you have write access to the repository, you can make a fork of an already existing branch and push this new branch
to GitHub. This means that this branch will be automatically built and be deployed
to https://pietervdvn.github.io/mc/<branchname>
. You can see the deploy process
on GitHub Actions. Don't worry about pushing too much. These
deploys are free and totally automatic. They might fail if something is wrong, but this will hinder no one.
Additionally, some other maintainer might step in and merge the latest develop with your branch, making later pull requests easier.
As a non-admin contributor, you can not make changes to the master
nor to the develop
branch. This is because, as
soon as master is changed, this is built and deployed on mapcomplete.org
, which a lot of people use. An error there
will cause a lot of grieve.
A push on develop
is automatically deployed to [pietervdvn.github.io/mc/develop] which is used by quite some
contributors. However, people using this version should know that this is a testing ground for new features and might
contain a bug every now and then.
In other words, to get your theme deployed on the main instances, you'll still have to create a pull request. The maintainers will then doublecheck and pull it in.
If you have made a fork earlier and have received contributor rights, you need to tell your local git repository that pushing to the main repository is possible.
To do this:
- type
git remote add upstream [email protected]:pietervdvn/MapComplete
- Run
git push upstream
to push your latest changes to the main repo (and not your fork). Runninggit push
will push to your fork.
Alternatively, if you don't have any unmerged changes, you can remove your local copy and clone pietervdvn/MapComplete
again to start fresh.
I'm currently not accepting files for integration with some text editor. There are hundreds of editors out there, if every single one of them needs a file in the repo, this ends up as a mess. Furthermore, MapComplete doesn't want to encourage or discourage some text editors. At last, these files are hard to maintain and are hard to detect if they have fallen out of use.