peertube-plugin-livechat/CONTRIBUTING.fr.md

4.4 KiB

Bienvenu sur le guide de contribution pour le plugin peertube-plugin-livechat

Intéressé⋅e pour contribuer ? Super !

Code de conduite

Merci de lire le code de conduite (ou la version anglaise).

Traduction

Vous pouvez nous aider à traduire ce plugin Peertube en créant ou modifiant des fichiers de traduction dans le dossier languages.

Merci de travailler sur la branche develop, et de faire vos pull request sur cette branche.

Si la langue dans laquelle vous souhaitez traduire n'existe pas encore, créez un fichier code.json dans le dossier languages, où code est le code langue. Le code langue doit être dans le même format que les codes langues de Peertube (voir la documentation Peertube). Ensuite, ajoutez le fichier de langue dans le fichier package.json, sous la clé translations.

Les traductions sont sous la forme suivante dans le fichier de langue :

  • les fichiers sont au format JSON
  • les clés JSON sont le texte en anglais (voir les clés existantes dans le fichier de traduction français, qui fait référence)
  • la valeur JSON est la traduction
  • NB: il n'y a pas de fichier de traduction pour l'anglais (c'est la façon de fonctionner de Peertube)

Donnez vos retours

Vous n'avez pas besoin de coder pour commencer à contribuer à ce plugin ! Les autres formes de contributions sont également précieuses, parmis lesquelles : vous pouvez tester le plugin et remonter les bugs que vous rencontrez, partager vos retours d'expérience, proposer des fonctionnalités qui vous intéressent, remonter vos remarques sur l'interface, le design, etc.

Développer et proposer des modifications de code

Toujours annoncer les fonctionnalités sur lesquelles vous voulez travailler en créant un ticket ou en commentant un ticket existant, avant de commencer à travailler dessus. Et annoncez clairement à la communauté que vous commencez à travailler dessus. Ceci afin d'éviter que plusieurs personnes travaillent sur la même chose et entrent en conflit.

Merci d'utiliser la branche develop. La branche main est réservée aux versions publiées, pour que la documentation affichée reste synchronisée avec la version publiée du plugin.

Pré-requis pour compiler le plugin:

  • vous devez avoir installé npm
  • vous devez avoir installé les venv python (paquet python3-venv sous Debian par exemple)

Pour clôner le dépot :

# Cloner le dépot
git clone https://github.com/JohnXLivingston/peertube-plugin-livechat.git
# Passer sur la branche develop
git checkout develop
# Initialiser les sous-modules. Cette commande est à refaire si jamais la version d'un l'un des sous-module change.
git submodule update --init --recursive

# Installer les dépendances NPM et compiler le plugin pour la première fois :
npm install

# Compiler le plugin après une modification :
npm run build

# Si vous avez un fork du dépot, ajoutez le en remote (exemple) :
git remote add me git@github.com:MON_COMPTE_GITHUB/peertube-plugin-livechat.git

# Créez une branche locale pour vos développements et placez vous dessus (exemple) :
git checkout mon_developpement # NB: si un ticket y est associé, utilisé le nom fix_1234 (où 1234 est le numéro du ticket)
# Pour proposer vos modifications, poussez votre branche sur votre dépot (exemple) :
git push --set-upstream me mon_developpement
# Rendez-vous ensuite sur votre dépot github avec votre navigateur web pour proposer la Pull Request (voir les instructions complémentaires ci-dessous)

Quand vous êtes prêt⋅e à montrer votre code pour avoir un retour, soumettez une Pull Request draft. Quand vous êtes prêt⋅e pour une relecture de code avant merge, soumettez une Pull Request. Dans tous les cas, merci de lier votre Pull Request au ticket concerné en utilisant la syntax de GitHub : «fixes #issue_number».

Le code du front-end est dans le dossier client. Le code backend dans server. Il y a du code partagé entre les deux dans shared.

Pour les instructions génériques concernant le développement de plugins (building, installation, ...), merci de vous référer à la documentation Peertube.

Vous pouvez builder le plugin avec des infos de debug supplémentaires en utilisant :

NODE_ENV=dev npm run build