cygnal/CONTRIBUTING.md

2.0 KiB

Contributing

These are some infos which might be useful before contributing.

TL;DR

We have a (rather standard) code of conduct, please make sure to review it prior to contributing.

The main language for working on this project is English. French is fine as well, if you are more comfortable speaking French.

  • Branch off master.
  • One feature per commit.
  • In case of changes request, amend your commit.

New issues and merge requests are better at Framagit.

You can contribute in many ways to Cycl'Assist, be it development, translations or simply communicating around about this webapp!

There is also an ongoing issue concerning the general UX and design of the webapp. If you have any knowledge on these subjects and want to help, feel free to comment this issue (in French or in English).

Development setup

The quickest way to get started is to simply run

API_BASE_URL=http://127.0.0.1:8081/ yarn dev

to spawn the client-side webapp, listening on localhost:8080 and

python -m server

to spawn the server-side part, listening on localhost:8081.

Useful scripts for dev

You can run scripts/gps_to_gpx.py on your GPX trace to create a src/tools/mock_gpx.json file ready to be used as a mocking source for the position data (just edit the src/constants.js file accordingly).

Translating

Translation is done directly on Zanata.

To add new strings to localize, edit the src/i18n/en.json file with your new strings (and only this file). Then, you can run yarn push-locales to send the updated locales to translate and yarn pull-locales to fetch the translated files. To use these scripts you will need the Translate-toolkit(pip install translate-toolkit) and the Zanata Python CLI client.