Écoconception du site akiani.fr
Architecture
Site statique généré avec Astro. Pas de CMS en production, pas de base de données interrogée à chaque visite. Les pages sont des fichiers HTML servis directement.
Côté navigateur
Pas de framework JavaScript côté client. Les interactions (navigation, dropdowns, animations au défilement, carrousels, sommaires d'articles, façades vidéo) sont écrites en JavaScript vanilla, page par page. Le CSS est concaténé en un bundle par page, minifié, sans framework.
Médias et polices
Images en WebP, dimensionnées pour leur usage, chargées en différé hors viewport. Polices Figtree et Source Serif 4, hébergées sur le même domaine (pas de fonts.google.com), avec une version sous-réglée aux glyphes utilisés sur la page d'accueil.
Un article du blog intègre une vidéo YouTube, en français et en anglais. Contrôle du 14 août 2026 sur le build : c'est une iframe brute, en loading="lazy", sans vignette ni clic préalable. Le lecteur du tiers se charge donc au défilement. La façade annoncée précédemment sur cette page n'a jamais été posée : l'écart est corrigé ici, et la façade reste à implémenter.
Mesure
Audit interne avec EcoIndex (méthode du collectif GreenIT), Lighthouse, et le RGESN 2024 comme grille de lecture. Mesure locale sur le dist de production, viewport 1920×1080, cache désactivé, scripts versionnés. Cf. ecoindex.fr pour la méthode officielle.
Conformité RGESN 2024
On a passé le site à la grille RGESN 2024 (78 critères, version mai 2024 publiée par l'Arcep). Voici où on en est sur les critères applicables au site.
- Conformité RGESN
- 30 % (16/54 critères applicables · cible 75 %)
- 16 conformes
- 22 à étoffer
- 12 à valider
- 2 à ouvrir/vérifier
- 24 N/A
- 2 non conformes
Budgets de performance
On s'est fixé deux seuils par indicateur : une cible vers laquelle on tire, et un seuil de régression qui déclenche un arbitrage avant déploiement. C'est un garde-fou de méthode, pas un test automatisé qui casse la mise en production. On regarde aussi séparément la première visite (navigateur cache vide) et la navigation interne après (assets déjà téléchargés grâce au cache), parce que le volume à transférer n'a rien à voir.
| Indicateur | Cible | Seuil régression | Actuel |
|---|---|---|---|
| First-load (cache vide) | |||
| Poids transféré | 500 Ko | 1500 Ko | 580 Ko |
| Requêtes HTTP | 20 | 30 | 12 |
| CSSMesure non-gzip dans dist/. Gzip OVH ≈ 14 Ko (sous cible). Pré-compression .gz fournie. | 30 Ko | 50 Ko | 71 Ko |
| JavaScript | 15 Ko | 30 Ko | 10 Ko |
| PolicesFigtree-Variable + Source Serif 4 300/400 (sous-set page home) | 100 Ko | 150 Ko | 120 Ko |
| Nœuds DOM | 800 | 1500 | 322 |
| Subsequent page (cache chaud) | |||
| Poids transféré (navigation interne)Non mesuré dans cet audit — mesure reportée (cf. AC-010) | 50 Ko | 200 Ko | — |
| Requêtes (navigation interne) | 5 | 12 | — |
Services tiers et hébergeur
On distingue ici les briques externes utilisées telles quelles, sans contrat, de l'hébergeur qui est sous contrat dédié.
Briques externes sans contrat
- Vimeo (derrière façade) · vidéos de présentation, 24 pages · vignette auto-hébergée, iframe player.vimeo.com posée au clic uniquement · 0 Ko tant que l'internaute ne clique pas
- YouTube (iframe brute) · replay de la conférence Weezdays, un article de blog en FR et en EN · aucune, l'iframe se charge au défilement (loading=lazy) · chargement du lecteur YouTube
Hébergeur sous contrat
- OVH · hébergement mutualisé · France (Roubaix/Strasbourg)
PUE : 1.28 groupe (granularité DC non publiée) · WUE : non publié · électricité : mix français ENEDIS ≈ 21 g CO₂eq/kWh
Ce qu'il reste à travailler
Les critères listés ci-dessous demandent une justification à étoffer, un sujet à ouvrir, ou ont été marqués non conformes en l'état. Les critères qui attendent juste une nouvelle mesure ne sont pas ici, ils sont dans le JSON téléchargeable.
- 4.4 Activation utilisateur des services tiers — Contrôle du 2026-08-14 : conforme sur les 24 façades Vimeo (vignette auto-hébergée, iframe posée au clic), NON conforme sur l'article Weezdays (FR + EN), qui embarque une iframe youtube.com brute en loading=lazy. Elle se charge au défilement, sans clic ni consentement. Le critère passe donc de ok à non conforme : la version précédente décrivait une façade YouTube qui n'a jamais été posée. Correction suivie par AC-012.
- 4.6 Médias porteurs d'information uniquement — Audit 2026-05-27 : footer-anim (footer-bg-anim webm 96 Ko) et hero-anim (76 Ko) = animations décoratives. Le contenu informationnel est porté par texte + image fixe (footer-bg.webp 89 Ko fallback). Non-conformité assumée — pas de valeur informationnelle ajoutée. Mitigation par 4.15 (bouton arrêt).
- 4.12 Indiquer impacts environnementaux importants — Aucune fonctionnalité actuelle n'a un impact suffisamment significatif pour alerter — à documenter explicitement.
- 1.1 Évaluer favorablement l'utilité du service vs impacts environnementaux — Réponses aux 9 questions Designers Éthiques + arbre de conséquences ADEME Empreinte Projet niv. 1 à produire
- 1.3 Référent écoconception identifié — Référent désigné le 2026-08-14 : Sébastien Klifa, qui porte aussi l'accessibilité numérique. Le critère reste à étoffer tant que le rôle et les missions ne sont pas écrits sur la déclaration et que le suppléant n'est pas nommé.
- 1.6 Collecte responsable et raisonnée des données — Le formulaire de /contact/ collecte le nom et l'adresse email, obligatoires pour répondre, puis société, fonction, téléphone et préférence de contact, tous facultatifs. Rien d'autre : aucun compte, aucun traceur, aucun service tiers dans le traitement (endpoint contact.php sur le domaine propre). Finalités, base légale et critères de conservation sont détaillés dans la politique de confidentialité. Corrigé le 2026-08-14 : la version précédente affirmait qu'Akiani n'avait pas de formulaire actif (audit Gabriel du 2026-08-11, constat C15).
- 2.1 Définir liste des profils de matériels supportés — Documenter desktop + mobile + ancien Android (≥ 5 ans) + iPhone N-3 + MBP 2015
- 2.7 Stratégie de maintenance et de décommissionnement — Mentionner 3 sous-types : préventive (mises à jour Astro/deps), corrective (bugs), évolutive (features). Plan de fin de vie URL/contenu.
- 2.8 Imposer démarche env. aux fournisseurs — Lister fournisseurs (OVH, freelances ext.) + clauses env. ou démarche déclarée
- 3.2 Architecture adaptant ressources à la consommation — Statique pré-buildé Astro = pas d'autoscaling applicatif. Documenter dimensionnement OVH mutualisé.
- 3.7 Optimiser sollicitation environnements dev/preprod/test — Documenter la sobriété des environnements non-prod : préprod OVH coupée hors usage, CI déclenchée uniquement sur PR pertinentes, tâches lourdes (audits Lighthouse/EcoIndex en masse) planifiées en heures creuses.
- 4.1 Pas d'autoplay (animations, vidéos, sons) — Audit 2026-05-27 : footer-anim a preload='none' + JS lazy + bouton 'Arrêter l'animation' (data-footer-autoplay). MAIS vidéo démarre automatiquement au scroll → autoplay implicite. À trancher : assumer (avec contrôle utilisateur) ou retirer l'autostart (cf. AC-007).
- 4.7 Choix sobre : texte > image > audio > vidéo — Audit 2026-05-27 : vidéos blog (Miro/Spline 280-432 Ko) = justifiables (démonstration outil). Footer-anim/hero-anim = décoratif (croise 4.6). Audit page par page de chaque média à produire.
- 4.15 Mode éco / contrôle utilisateur sur impacts — Audit 2026-05-27 : bouton 'Arrêter l'animation' présent sur le footer = contrôle utilisateur granulaire. À documenter explicitement comme 'mode éco partiel' plutôt que toggle global. Le contrôle utilisateur reste exigible, indépendamment du poids global du site.
- 5.8 Stratégie d'archivage/suppression contenus obsolètes — Mettre en place un content pruning trimestriel : analytics → identifier les pages à faible valeur (ex. seuil < 10 visites/trimestre) → décision archive / fusion / dépublication, et tenir un journal des suppressions.
- 6.4 Dimensions image = dimensions d'affichage — Audit multi-dpr instrumenté le 28 mai 2026 sur 12 archétypes (183 images, viewport desktop dpr=1 + viewport mobile dpr=2). Classification : 2 sources réellement surdimensionnées même à dpr 2 mobile (mountain-bg.webp ratio linéaire 3.84×, decor__group-photo.avif ratio linéaire 2.74×) → réexport prévu (cf. AC-011). 6 images sans srcset alors que le composant Astro devrait en générer un (3 hero EDC savoir-faire, illustration-limits research, team-outdoor identité, lab hero + dark-mode-1) → cause racine identifiée (glob mal résolu + glob eager:false dans OptimizedCardImage), fix prévu (cf. AC-011). 8 thumbs blog-index avec srcset présent mais sizes mal calibré (ratio linéaire 1.53× = ~50 % trop large à dpr 1) → recalibrage BlogCard. 1 cas légitime de cover-crop (carousel tab-1.webp identité, aspect 2.74 vs 0.80). 39 SVG icônes avec attributs width/height parasites (icon-ux, icon-research, icon-ui, icon-link), sans impact poids mais à nettoyer.
- 6.5 Pas de chargement de ressources inutilisées — Audit 2026-05-27 : bundles CSS lourds (style-edc 142 Ko, style-blog-article 135 Ko, style-identite 132 Ko, style-blog 124 Ko brut) suggèrent doublons (components.css concaténé multiple fois). Cf. AC-008. Coverage DevTools sur pages représentatives recommandé.
- 7.2 Durées de conservation données et documents — Le formulaire de contact est le seul traitement du site. Les messages ne sont stockés nulle part sur le serveur : contact.php les relaie par mail vers hello@akiani.fr, boîte fournie par Google Workspace. Conservation exprimée par critères et non par durée fixe, comme le permet l'article 13-2-a du RGPD : le temps de traiter la demande et la relation qui peut en découler, le temps d'étudier le profil pour une candidature. Formulation alignée sur la politique de confidentialité (arbitrage du 2026-08-14). Reste à ouvrir : une purge périodique effective de la boîte.
- 8.1 Hébergeur ayant démarche de réduction d'empreinte — OVH n'est PAS dans liste CoC européen JRC (vérifié 2026-05-27). Documenter alternative : Climate Active OVH, ISO 14001 mutualisé, rapport RSE.
- 8.2 Politique de gestion durable des équipements (hébergeur) — Attestation OVH : cycle de vie matériel, recyclage, taux de reconditionnement
Actions en cours
- AC-002 · échéance 2026-07-15 · critères 1.1
Documenter les 9 réponses Designers Éthiques + arbre de conséquences ADEME - AC-003 · échéance 2026-06-15 · critères 1.4, 1.5
Formaliser la cadence d'audit interne d'écoconception + fixer cible chiffrée EcoIndex - AC-004 · échéance 2026-08-01 · critères 8.1, 8.2, 8.3, 8.4, 8.5
Compléter le dossier hébergeur OVH (Climate Active, ISO, PUE, électricité) - AC-005 · échéance 2026-09-01 · critères 4.15
Décision : refonte sobre (palette + animation) OU implémentation toggle mode éco fonctionnel - AC-006 · échéance 2026-06-15 · critères 6.1
Lancer premier audit complet EcoIndex × 3 passes (nominal, 3G, 4G P75) sur les 12 archétypes - AC-007 · échéance 2026-09-01 · critères 4.6, 4.7
Décider : conserver footer-anim + hero-anim (décoratives, ~170 Ko) ou retirer. Si conserver, documenter explicitement la non-conformité assumée 4.6 + le contrôle 4.15 (bouton arrêt). - AC-008 · échéance 2026-07-15 · critères 6.5
Audit bundles CSS : vérifier que components.css n'est pas concaténé plusieurs fois (style-edc 142 Ko, style-blog-article 135 Ko, style-identite 132 Ko semblent gonflés). Lancer Coverage DevTools sur les 3 archétypes les plus lourds. - AC-009 · échéance 2026-07-15 · critères 6.1
Optimiser blog/fr/ux-days-2025-resume-de-la-journee-dateliers (seule page mesurée sous grade B, score 68.9 C — DOM 549, 13 req, 804 Ko). Réduire DOM (sections h2/h3 redondantes ?) et compresser hero (115 Ko cover). - AC-010 · échéance 2026-06-30 · critères 1.4, 6.1
Compléter le script d'audit EcoIndex pour produire automatiquement les 3 passes (nominal, 3G rurale 144 Kbps, 4G P75 9 Mbps avec 100 ms de latence) avec throttling CPU sur l'ensemble des archétypes. - AC-012 · échéance 2026-09-30 · critères 4.4, 2.10
Poser une façade sur l'iframe YouTube de l'article Weezdays (FR + EN), sur le modèle des 24 façades Vimeo déjà en place : vignette auto-hébergée, iframe chargée au clic. Ouverte le 2026-08-14, après le constat que la façade YouTube décrite depuis mai n'existait pas.
Audit critère par critère
Tous les critères sont publiés dans un fichier JSON téléchargeable. C'est ce que lit le composant ci-dessus pour produire l'affichage. Le fichier contient le statut actuel de chaque critère, la preuve qu'on en a (quand on en a une), les mesures associées et les actions correctives en cours.
Ce qu'on ne sait pas encore
- Audit interne, mené par l'outillage maison Akiani. Pas encore d'audit externe par un cabinet spécialisé.
- Les mesures EcoIndex sont calculées en local via Chrome DevTools Protocol, pas par un passage officiel sur ecoindex.fr après chaque déploiement.
- L'audit du 27 mai 2026 n'a couvert que la passe nominale. Les passes mobile 3G rurale et mobile 4G P75 sur terminal d'entrée de gamme représentatif (9 Mbps, 100 ms de latence) sont reportées à AC-010 le temps de compléter l'outillage.
- L'audit EcoIndex global sur les 347 pages n'a pas été finalisé à cette date (durée de traitement estimée au-dessus de 30 minutes). 15 archétypes ont été échantillonnés, ce qui couvre les principaux templates.
- L'audit dimensions image (taille intrinsèque vs taille d'affichage, RGESN 6.4) a été instrumenté le 28 mai 2026 sur 12 archétypes en multi-dpr (desktop dpr 1 et mobile dpr 2), avec classification automatique en quatre buckets : true-oversized, retina-no-srcset, cover-crop, svg-attrs-parasites.
- Pour la famille Algorithmie (9.1 à 9.7), tout est non applicable : aucun modèle de machine learning ou d'inférence IA n'intervient dans le service.
- Côté hébergeur OVH, le PUE et le WUE sont publiés au niveau du groupe seulement, pas par datacenter mutualisé. Ces chiffres sont repris en l'état, avec leur limite de granularité.
- Le référent écoconception est désigné depuis le 2026-08-14 (Sébastien Klifa). Son suppléant reste à nommer (AC-001).
- Les animations footer et hero de la home sont décoratives. Elles sont marquées non conformes au critère 4.6, avec une mitigation par le contrôle utilisateur (bouton 'Arrêter l'animation') côté 4.15.
Contact
Pour signaler une page lourde, un visuel mal optimisé ou une ressource superflue, ou pour demander des précisions sur cette déclaration, écrivez à hello@akiani.fr.