From 1644d2606f60eb51159a8dcb98d61395b6e9c976 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20FAMIBELLE-PRONZOLA?= Date: Thu, 9 Jul 2026 03:37:51 +0400 Subject: [PATCH] =?UTF-8?q?docs:=20mise=20=C3=A0=20jour=20de=20la=20docume?= =?UTF-8?q?ntation=20suite=20aux=20=C3=A9volutions=20r=C3=A9centes?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - README.md : services, projets, liens sociaux, structure, sécurité et copyright 2026 - CHANGELOG.md : ajout d'une section Unreleased (headers HTTP, HTTPS, CSP, FEDIVERSE.OKI, réseaux sociaux, o2switch) - CONTRIBUTING.md : correction des exemples, ajout du filtre CDN et note sécurité - SEO.md : plateformes sociales et checklist HTTPS/hreflang à jour --- CHANGELOG.md | 20 ++++++++++++++ CONTRIBUTING.md | 73 +++++++++++++++++++++++++++++-------------------- README.md | 61 +++++++++++++++++++++++++++-------------- SEO.md | 7 +++-- 4 files changed, 107 insertions(+), 54 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b51fd17..5c434d2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,25 @@ # Changelog +## [Unreleased] + +### 🛡️ Sécurité +- ✅ **Headers HTTP de sécurité** : ajout d'un `.htaccess` Apache avec `Strict-Transport-Security`, `Content-Security-Policy`, `X-Frame-Options`, `X-Content-Type-Options`, `Referrer-Policy` et `Permissions-Policy` +- ✅ **Redirection HTTP → HTTPS** : forçage du HTTPS via `mod_rewrite` +- ✅ **CSP stricte** : refactorisation des scripts inline en fichiers externes et suppression des gestionnaires `onclick` inline + +### 🎬 Contenu +- ✅ **Nouveau projet** : ajout de `FEDIVERSE.OKI` dans la section projets +- ✅ **Logos clients** : récupération locale des logos distants et service via le CDN +- ✅ **Réseaux sociaux** : mise à jour du lien Discord, retrait de Stoat, X (Twitter) et TikTok +- ✅ **Chaînes PAWOL.NU** : distinction visuelle dans la page contact entre les chaînes WhatsApp/Telegram et les autres moyens de contact +- ✅ **Mentions légales** : hébergeur mis à jour (OVH → o2switch) +- ✅ **Footer** : année du copyright générée automatiquement via un shortcode Eleventy +- ✅ **Liens Labola** : lien footer vers le dépôt du site, lien contact vers l'organisation Gitea + +### 🔧 Technique +- ✅ Shortcode Eleventy `{% year %}` pour l'année en cours +- ✅ Événements JS attachés dans `main.js` pour les accordéons FAQ et les dons personnalisés + ## Version 2.1.0 - Design Afrofuturisme Caribéen (2025-11-05) ### 🌓 Système de Thème Clair/Sombre diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index c4a0bad..8d3a7c1 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,17 +1,16 @@ # Guide de contribution -Merci de votre intérêt pour contribuer au site dE l'ORGANISATION KA INTERNATIONALE ! +Merci de votre intérêt pour contribuer au site de l'ORGANISATION KA INTERNATIONALE ! ## Ajouter du contenu -### Ajouter un service Fédiverse +### Ajouter un service hébergé -Éditez `src/_data/services.json` : +Éditez `src/_data/i18n/fr/services.json` (et la version `en/`) : ```json { "name": "NOM_DU_SERVICE", - "icon": "🎯", "platform": "Nom de la plateforme", "description": "Description du service", "url": "https://service.o-k-i.net/", @@ -21,20 +20,25 @@ Merci de votre intérêt pour contribuer au site dE l'ORGANISATION KA INTERNATIO ### Ajouter un projet web -Éditez `src/_data/projects.json` : +Éditez `src/_data/i18n/fr/projects.json` (et la version `en/`) : ```json { "name": "NOM.PROJET", "icon": "📱", "domain": "nom.projet", - "description": "Description du projet" + "description": "Description du projet", + "url": "https://nom.projet/" } ``` +### Ajouter un client ou partenaire + +Pour les logos, privilégiez une image locale dans `src/assets/images/` et utilisez le filtre `| cdn` dans les templates. Les URLs distantes fonctionnent mais ne passent pas par le CDN. + ### Ajouter une valeur -Éditez `src/_data/values.json` : +Éditez `src/_data/i18n/fr/values.json` (et la version `en/`) : ```json { @@ -46,7 +50,7 @@ Merci de votre intérêt pour contribuer au site dE l'ORGANISATION KA INTERNATIO ### Modifier la navigation -Éditez `src/_data/navigation.json` : +Éditez `src/_data/i18n/fr/navigation.json` (et la version `en/`) : ```json { @@ -58,18 +62,15 @@ Merci de votre intérêt pour contribuer au site dE l'ORGANISATION KA INTERNATIO Pour un lien externe, mettez `"external": true`. -### Ajouter une section de contact +### Modifier les informations de contact -Éditez `src/_data/contact.json` : +Les liens de contact sont regroupés par section dans `src/_data/i18n/fr/contact.json` (et la version `en/`). L'icône affichée est déterminée automatiquement à partir du texte du lien (`whatsapp`, `telegram`, `discord`, `labola`, `kontak`/`mail`). ```json { - "title": "🔗 Titre de la section", + "title": "💬 Communauté", "links": [ - { - "text": "Nom du lien", - "url": "https://example.com" - } + { "text": "Discord", "url": "https://discord.gg/DPvUCA8dD" } ] } ``` @@ -78,17 +79,19 @@ Pour un lien externe, mettez `"external": true`. Les styles sont dans `src/assets/css/styles.css`. -### Variables CSS disponibles +### Variables CSS principales ```css ---bleu-ocean: #003566; ---jaune-soleil: #FFB700; ---rouge-resistance: #D62828; ---vert-terre: #2A9134; ---orange-communaute: #FB8500; ---noir-profond: #0A0908; ---blanc-lumiere: #F7F7F2; ---violet-fedi: #6364FF; +--or-oki: #E8A625; +--noir-oki: #000000; +--vert-oki: #00A854; +--rouge-oki: #ED1C4C; +--blanc-creme: #F7F7F2; +--noir-profond: #1A1A1A; +--gris-sombre: #2A2A2A; +--or-clair: #F5BD4F; +--vert-clair: #00C569; +--rouge-clair: #FF2D5F; ``` ## Créer une nouvelle page @@ -108,9 +111,11 @@ description: Description pour le SEO ``` -2. Ajoutez le lien dans `src/_data/navigation.json` si nécessaire +2. Ajoutez le lien dans `src/_data/i18n/fr/navigation.json` (et `en/`) si nécessaire. -3. Reconstruisez le site : `npm run build` +3. Mettez à jour `src/sitemap.xml`. + +4. Reconstruisez le site : `npm run build`. ## Modifier un partial @@ -118,11 +123,15 @@ Les partials sont dans `src/_includes/partials/` : - `nav.njk` - Navigation - `hero.njk` - Section hero (accueil) -- `fediverse.njk` - Services Fédiverse +- `services.njk` - Services hébergés - `projects.njk` - Projets web - `mission.njk` - Mission et valeurs - `hosting.njk` - Services d'hébergement - `support.njk` - Section dons +- `clients.njk` - Clients / organisations ayant fait confiance +- `partners.njk` - Partenaires +- `faq.njk` - Questions fréquentes +- `engagement.njk` - Appels à l'action - `contact.njk` - Informations de contact - `footer.njk` - Pied de page @@ -133,7 +142,7 @@ Les partials sont dans `src/_includes/partials/` : git checkout -b feature/ma-fonctionnalite ``` -2. Faites vos modifications +2. Faites vos modifications. 3. Testez localement : ```bash @@ -151,7 +160,7 @@ Les partials sont dans `src/_includes/partials/` : git commit -m "Description de vos changements" ``` -6. Poussez et créez une pull request : +6. Poussez et créez une merge request : ```bash git push origin feature/ma-fonctionnalite ``` @@ -174,6 +183,10 @@ Les partials sont dans `src/_includes/partials/` : - Commentaires en français - Gestion des erreurs +### Sécurité +- Ne pas ajouter de scripts inline sans ajuster la CSP dans `src/.htaccess`. +- Conserver les headers de sécurité lors d'une modification du serveur. + ## Questions ? -Contactez-nous à kontak@o-k-i.net ou ouvrez une issue sur Codeberg. +Contactez-nous à kontak@o-k-i.net ou ouvrez une issue sur [Labola](https://labola.o-k-i.net/ORGANISATION-KA-INTERNATIONALE/o-k-i.net). diff --git a/README.md b/README.md index 794b311..d1e1fe4 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # o-k-i.net V2 -Site web officiel de **ORGANISATION KA INTERNATIONALE (OKI)** - Version 2 construite avec 11ty (Eleventy). +Site web officiel de **ORGANISATION KA INTERNATIONALE (OKI)** - Version 2 construite avec 11ty (Eleventy). ## À propos @@ -16,6 +16,7 @@ Pas aux GAFAM qui en font leur business. Pas d'algorithmes aveugles, pas de cens - **Nunjucks** - Moteur de templates - **CSS personnalisé** - Sans framework - **JavaScript Vanilla** - Interactions et animations +- **Apache `.htaccess`** - Headers de sécurité et redirection HTTPS ## Structure du projet @@ -23,14 +24,17 @@ Pas aux GAFAM qui en font leur business. Pas d'algorithmes aveugles, pas de cens o-k-i.net-V2/ ├── src/ │ ├── _data/ # Données JSON (services, projets, valeurs, etc.) +│ │ └── i18n/ # Fichiers de traduction FR/EN │ ├── _includes/ │ │ ├── layouts/ # Layouts de base │ │ └── partials/ # Composants réutilisables │ ├── assets/ │ │ ├── css/ # Feuilles de style │ │ ├── js/ # Scripts JavaScript -│ │ └── images/ # Images -│ └── index.njk # Page d'accueil +│ │ └── images/ # Images (logos, clients, etc.) +│ ├── .htaccess # Headers de sécurité et rewrite rules +│ ├── index.njk # Page d'accueil +│ └── mentions-legales.njk ├── _site/ # Site généré (git ignoré) ├── eleventy.config.js # Configuration 11ty └── package.json @@ -40,8 +44,8 @@ o-k-i.net-V2/ ```bash # Cloner le dépôt -git clone https://codeberg.org/OKI/o-k-i.net-V2.git -cd o-k-i.net-V2 +git clone https://labola.o-k-i.net/ORGANISATION-KA-INTERNATIONALE/o-k-i.net.git +cd o-k-i.net # Installer les dépendances npm install @@ -69,16 +73,21 @@ npm run build ### Modifier les données -Les données du site sont organisées dans `src/_data/` : +Les données du site sont organisées dans `src/_data/i18n/fr/` et `src/_data/i18n/en/` : - `site.json` - Informations générales du site -- `services.json` - Services Fédiverse (KUTE, GADE, BOKANTAJ, MIZIK) -- `projects.json` - Projets web (FEDIVERSE OKI, OKI.RE, NUVEL.NU, JWE.OVH, GONG.GP) -- `partners.json` - Partenaires (Joukawouvè, Aktivist Vybz #AKV) +- `services.json` - Services hébergés (BOKANTE, GADE, NIYAJ, KUTE) +- `projects.json` - Projets web (PAWOL.NU, GONG.GP, FEDIVERSE.OKI) +- `partners.json` - Partenaires (Joukawouvè, cyber-mawonaj, Aktivist Vybz #AKV) +- `clients.json` - Clients / organisations ayant fait confiance à OKI - `values.json` - Valeurs de l'organisation -- `contact.json` - Informations de contact +- `contact.json` - Informations de contact (groupées par section) - `navigation.json` - Liens de navigation +### Images et CDN + +Les images locales placées dans `src/assets/images/` sont automatiquement copiées dans `_site/assets/images/`. Le filtre `| cdn` appliqué dans les templates préfixe les chemins commençant par `/` avec l'URL du pull zone BunnyCDN définie dans `src/_data/cdn.json`. + ### Modifier les styles Les styles sont dans `src/assets/css/styles.css`. La charte graphique est basée sur les couleurs du logo officiel d'OKI : @@ -104,6 +113,7 @@ Les styles sont dans `src/assets/css/styles.css`. La charte graphique est basée ## Fonctionnalités - ✅ Design responsive et moderne +- ✅ Bilingue FR/EN - ✅ Animations fluides - ✅ Navigation mobile - ✅ Scroll smooth @@ -112,14 +122,18 @@ Les styles sont dans `src/assets/css/styles.css`. La charte graphique est basée - ✅ Performance optimisée - ✅ Logo et favicon intégrés - ✅ Charte graphique basée sur le logo officiel +- ✅ Headers de sécurité HTTP (CSP, HSTS, XFO, etc.) +- ✅ Redirection automatique HTTP → HTTPS +- ✅ Année du footer générée automatiquement ### SEO & Référencement - ✅ Meta tags Open Graph (Facebook, LinkedIn) -- ✅ Twitter Cards +- ✅ Twitter / X Cards - ✅ JSON-LD Structured Data (Schema.org) - ✅ Sitemap.xml - ✅ Robots.txt - ✅ Balises canonical +- ✅ Hreflang FR/EN - ✅ Meta description personnalisées - ✅ Mots-clés pertinents @@ -127,19 +141,20 @@ Les styles sont dans `src/assets/css/styles.css`. La charte graphique est basée 1. **Hero** - Présentation de l'organisation avec accroche percutante 2. **Solutions** - Segmentation par public (associations, entreprises, citoyens) -3. **Fédiverse** - Services alternatifs (GADE, BOKANTAJ, MIZIK, KUTE) -4. **Projets Web** - Nos projets (FEDIVERSE OKI, OKI.RE, NUVEL.NU, JWE.OVH, GONG.GP) +3. **Services hébergés** - Alternatives libres (BOKANTE, GADE, NIYAJ, KUTE) +4. **Projets Web** - Nos projets (PAWOL.NU, GONG.GP, FEDIVERSE.OKI) 5. **Mission** - Valeurs et objectifs avec message anti-GAFAM 6. **Hébergement** - Services d'hébergement et infrastructure 7. **Support** - Options de dons (Stripe, Liberapay, Ko-fi) 8. **Partenaires** - Joukawouvè, cyber-mawonaj, Aktivist Vybz #AKV -9. **FAQ** - Questions fréquentes avec storytelling sur le nom "Ka" -10. **Engagement** - Formulaire de contact et appels à l'action -11. **Contact** - Liens vers réseaux sociaux et plateformes +9. **Ils nous ont fait confiance** - KA Ubuntu, KBM +10. **FAQ** - Questions fréquentes avec storytelling sur le nom "Ka" +11. **Engagement** - Appels à l'action +12. **Contact** - Email, WhatsApp, Discord, chaînes PAWOL.NU, Labola ## Contribution -Les contributions sont les bienvenues ! N'hésitez pas à ouvrir une issue ou une pull request sur [Codeberg](https://codeberg.org/OKI/o-k-i.net-V2). +Les contributions sont les bienvenues ! N'hésitez pas à ouvrir une issue ou une pull request sur [Labola](https://labola.o-k-i.net/ORGANISATION-KA-INTERNATIONALE/o-k-i.net). ## Licence @@ -154,14 +169,18 @@ La licence AGPL-V3 est une licence de logiciel libre qui garantit : Voir le fichier [LICENSE](LICENSE) pour plus de détails ou consultez : https://www.gnu.org/licenses/agpl-3.0.html -© 2024 ORGANISATION KA INTERNATIONALE +© 2026 ORGANISATION KA INTERNATIONALE ## Liens - 🌐 [Site web](https://o-k-i.net) - 📺 [GADE (PeerTube)](https://gade.o-k-i.net/) -- 🐦 [BOKANTAJ (Pleroma)](https://bokantaj.o-k-i.net/) -- 🎵 [MIZIK (Funkwhale)](https://mizik.o-k-i.net/library) +- 🐘 [BOKANTE (Mastodon)](https://bokante.o-k-i.net/) +- ☁️ [NIYAJ (Nextcloud)](https://niyaj.o-k-i.net/) - 🎙️ [KUTE (Castopod)](https://kute.o-k-i.net/) -- 💻 [Codeberg](https://codeberg.org/OKI) +- 💬 [Discord](https://discord.gg/DPvUCA8dD) +- 📱 [WhatsApp](https://wa.me/262692229740) +- 📢 [Chaîne WhatsApp PAWOL.NU](https://whatsapp.com/channel/0029VbCv7N9AjPXTxygrRu1w) +- ✈️ [Chaîne Telegram PAWOL.NU](https://t.me/OrganisationKA) +- 💻 [Labola (Gitea)](https://labola.o-k-i.net/ORGANISATION-KA-INTERNATIONALE) - 📧 kontak@o-k-i.net diff --git a/SEO.md b/SEO.md index 2948cbc..5e12c1d 100644 --- a/SEO.md +++ b/SEO.md @@ -70,7 +70,7 @@ Données structurées conformes à Schema.org pour améliorer l'affichage dans l - Description - Adresse physique (Basse-Terre, Guadeloupe) - Email de contact -- Liens vers les plateformes sociales (GADE, BOKANTAJ, MIZIK, KUTE, Codeberg, Liberapay) +- Liens vers les plateformes sociales (GADE, BOKANTE, NIYAJ, KUTE, Discord, Labola, Liberapay) - Statut : Organisation à but non lucratif ## 🔍 Optimisations par page @@ -182,7 +182,8 @@ curl http://localhost:8080/ | grep -E "(og:|twitter:)" - [x] Logo haute résolution (512x512) - [ ] Images avec attributs alt - [ ] Performance optimale (Lighthouse score) -- [ ] Mobile-friendly (déjà responsive) -- [ ] HTTPS activé (à configurer en production) +- [x] Mobile-friendly (déjà responsive) +- [x] HTTPS activé et HSTS configuré +- [x] Hreflang FR/EN pour les versions multilingues - [ ] Google Search Console configuré - [ ] Analytics installé (optionnel, respectueux RGPD)