# How to contribute

# How you can participate in the Roadmap

If you don't know how exactly to help you can have a look at our list of issues (opens new window). You can also start working on a description for one of the competencies. To avoid any duplication of the work use this checklist:

  1. Check on the board that this task is not 'In progress'

  2. Find that ticket in the knowledge-base labels (opens new window) list and assign it to yourself and move it to 'In progress'

  3. Finish your contribution by sending us a PR

  4. If everything is OK the change will be accepted and merged

# Accepting the changes

Your changes will be merged once a maintainer will review them. Currently it's only AE (opens new window).

# How this web site works

We build this web site using VuePress (opens new window) and deploy it to our hosting using Netlify (opens new window). Before sending your change you can check how it will look using the the local copy of the repo and running VuePress instance locally. For that you will need to check out the repo (see more here) and run yarn dev. This command will start a local version of the web site. Before that you will need to install all the project dependencies using yarn install. VuePress will allow you to see all change to the Markdown files in real time without the reload. Once you are satisfied with it you can push your changes and create a PR.

# Files format

All data is essentially stored as *.md files. These are the Markdown (opens new window) files and they are considered a de facto standard for documentation in the Internet. For now we stick with a few files each of them having a number of sections. Later, once we grow we might need to reconsider that and come up with a better structure.

# Adding or updating data

# GIT

The idea of this guide is to be a free and open-source source of information. And, what better talks about open-source than git and github? We decided to put everything up on GitHub to make the process as transparent as possible. In order to participate in the contribution you will need to have a GitHub account and know some basics of git. We are not going to write a guide for how to do so. There are plenty of guides in the Internet. The important part here is the high-level process:

  1. You check out the repo
  2. Create a new branch for the planned change
  3. Make a change in one or more files; or add new ones
  4. Push your changes from your local repo to the remote
  5. Create a Pull request (PR) from the branch that you worked on to the main
  6. Maintainers review the change and approve and merge it with the main
  7. Once it's merged it's going to be deployed automatically to Netlify and the changes will appear on the web site after a few minutes

# "I want to help but not really technical"

If you want to help but don't know git and don't really want to learn it, that's fine too. Just send a message in our Telegram (opens new window) chat with the details of your contribution and we will take it from there. However, please consider learning Git, this is one of the key Technical skills and will help to understand better how your dev teams work wit their code.