readme: contrib guidelines

This commit is contained in:
Pascal Engélibert 2023-06-03 00:15:55 +02:00
parent d6cd9a1176
commit 0e5a9486b9

View file

@ -9,3 +9,33 @@ Proposition de design pour Librezo.
```bash
zola serve
```
## Contribution
Le site devrait respecter les points suivants.
Note : il n'est pas nécessaire de s'y conformer immédiatement en faisant une MR. La relecture de MR est là pour ça.
* **Validité**
* Testez votre code avec [le validateur du W3C](https://validator.w3.org).
* **Accessibilité et Responsive**
* Testez votre code avec [le validateur WAVE](https://wave.webaim.org).
* Suivez les recommandations d'accessibilité du [W3C](https://www.w3.org/WAI/) et du [MDN](https://developer.mozilla.org/en-US/docs/Web/Accessibility).
* Toutes les fonctionnalités doivent être accessibles au clavier exclusivement (tab, flèches, entrée, espace). Essayez éventuellement avec un lecteur d'écran comme [Orca](https://wiki.gnome.org/Projects/Orca) (Linux), [NVDA](https://www.nvaccess.org/) (Windows) ou TalkBack (Android).
* Les images doivent être optionnelles.
* JavaScript doit être optionnel.
* Les modes clair et sombres doivent être utilisables. (sous Firefox, CTRL+Maj+i puis icônes Soleil et Lune)
* Testez la page avec différentes tailles d'écran. (sous Firefox, CTRL+Maj+m)
* Testez la page avec des simulateurs de daltonisme. (sous Firefox, CTRL+Maj+i puis onglet Accessibilité)
* **Performance**
* Limitez l'utilisation de frameworks.
* Compressez bien les images. [YOGA Image Optimizer](https://yoga.flozz.org/) peut être utile.
* Réduisez les requêtes externes.
* Évitez les animations en continu et les lectures automatiques.
* **Style de code**
* Respectez l'indentation.
* La convention de nommages des `id` et `class` est hiérarchique, avec les niveaux de hiérarchie séparés par des tirets `-`. Les underscores `_` marquent un espace mais pas un niveau hiérarchique.
Exemple : `header-menu-button` serait un bouton du menu de l'entête.
* **Légalité**
* Respectez le RGPD et la loi Informatique et Libertés.
* Sauf exception, n'utilisez que des œuvres et formats libres, et respectez leur licence. (images, polices, bibliothèques)