Thank you for your interest in contributing to the distrochoooser project 🎉!
Following documents are important for any contribution in the distrochooser repository
👉 License
Basically, the distrochooser project splits into two modules, the frontend (viisi
, which is a Nuxt.js project) and the backend (backend
, wich is a Django project).
- 📦 Please use yarn while working with the frontend
- 🐍 The backend is Python3 only
Viisi is a Nuxt.js 2 project. It heavily depends on https://github.com/christianmalek/vuex-rest-api for communicating with the JSON backend. The frontend does not load all the required data at startup, it does only load the translations and the data required for the currently displayed data. If you switch a question, the data for the next question gets loaded.
As mentioned, the backend is a django application. The majority of logic happens in the views.py
file, the calculation methods are isolated in the calculations/
folder.
You can find the file backend/locale/en.po
in this repository. This file is the english translation. If you don't have a GitHub account and want to download it: the direct link.
Use this file as the boilerplate for your translation.
The file names in backend/locale
are following the ISO-639-1 standard, wich means they are two letter codes.
E. g. if you want to create a greece translation, use the filename gr.po
.
The files are structured in key:value pairs, marked with msgid
(the key) and msgstr
(the value).
msgid "welcome-text"
msgstr "Welcome! This test will help you choose a suitable Linux distribution."
msgid "example-text"
msgstr "This example is "quoted"" ⚠ syntax error!
You can use '
inside of the value:
msgid "example-text"
msgstr "This example is 'quoted'" ✅ all good
Or you can escape the "
:
msgid "example-text"
msgstr "This example is \"quoted\"" ✅ all good
You can either do a pull request into the distrochooser/distrochooser:master
branch or, if you don't have a GitHub account, send it via mail to [email protected]
.
Thank you for your support 😁