website/README.md

49 lines
2.2 KiB
Markdown
Raw Normal View History

2023-07-31 11:04:00 +02:00
# Nouveau site web de Librezo
2022-09-26 07:46:56 +02:00
[voir le rendu](http://librezo.txmn.tk)
2023-03-20 19:15:37 +01:00
2023-07-31 11:04:00 +02:00
## Utilisation
2023-03-20 19:15:37 +01:00
2023-07-31 11:04:00 +02:00
[Installez Zola](https://getzola.org)
2023-03-20 19:15:37 +01:00
```bash
2023-07-31 11:04:00 +02:00
# tester en local
zola serve
# compiler en démo publique
LIBREZO_WEBSITE=dev zola build
# compiler en prod
zola build
2023-03-20 19:15:37 +01:00
```
2023-06-03 00:15:55 +02:00
## 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)