Changelog
Historique des versions et de l'amélioration continue
Version 0.19.0 2026-04-13 Audit & Easter Eggs
Audit Technique Absolu (P2/P3)
- Added CSP Stricte (A+) : Purge définitive de tous les styles inline (
style="...") restants dans le HTML. Création de classes utilitaires transverses dansshared.csspour refermer la porte aux failles XSS tout en réussissant les audits stricts. - Changed Cohérence de la Grille de 8px : Nettoyage radical des valeurs d'espacement "magiques" (pixels orphelins) au profit exclusif des tokens CSS (
var(--space-*)) sur l'ensemble de l'interface. - Added Easter Eggs — Delight : Implémentation du pattern IIFE pour masquer des curiosités (Stack Reveal via la console) afin de transformer le portfolio en terrain interactif.
- Added API Introspection : Exposition sécurisée d'un graphe global (
window.__PORTFOLIO_INFO__) résumant la stack, l'éco-conception et l'architecture pour les LLMs.
Version 0.18.1 2026-04-13 Accessibilité RGAA
Audit Opquast & RGAA (Niveau AA)
- Changed Contraste AA : Ajustement manuel du point de luminance OKLCH (
--color-primary-500) pour atteindre un ratio colorimétrique strict de 4.77:1 contre fond clair, sans altérer la signature de marque. - Added Protection Vestibulaire : Déploiement transversal d'un coupe-circuit
@media (prefers-reduced-motion: reduce)natif neutralisant toutanimation,transition, et comportements descroll-behaviorpour les visiteurs sensibles, avec synchronisation dynamique via la modale des réglages d'accessibilité. - Fixed Focus Fantôme : Affectation préventive de la propriété
tabindex="-1"aux boutons off-screen (Scroll-To-Top / Modales cachées), supprimant les zones de piégeage d'interactions au clavier. - Added Sémantique Structurelle : Encapsulation et balisage de toutes les navigations secondaires du site dans des balises expertes
<nav>, avec indication automatique dynamique (aria-current="page") via Javascript lors de la navigation active. - Fixed Typographie vocale : Masquage aux liseuses d'écrans (via
aria-hidden="true") de diverses ponctuations purement décoratives (tiret cadratin, points médians) et substitution sémantique textuelle pour préserver l'impact du récit de présentation sans saccader le flux vocal.
Version 0.18.0 2026-04-06 Feature & Fix
Modale Winback & Navigation
- Added Rétention
utilisateur (Winback) : Nouvelle modale stratégique déclenchée via l'API
visibilitychangeau retour de l'utilisateur sur l'onglet, pour éviter une perte d'attention et inciter au dialogue. - Fixed Auto-focus
Modale : Correction native de l'anneau de focus indésirable sur l'icône de
fermeture des modales en transférant intelligemment l'
autofocus(et untabindex="-1") sur le message, pour une lecture directe par les outils d'assistance vocale. - Fixed Stacking
Context (Z-index) : Substitution du
z-indexpar l'API Webpopover="manual"sur le Toast de validation d'email (avec fallback rétrocompatible), forçant son affichage dans le top-layer et évitant de se faire recouvrir par le filtre flouté du backdrop des modales. - Added Scroll To Top : Implémentation d'un bouton de retour en haut de page, apparaissant en douceur uniquement à la toute fin de la consultation (150px finaux), et visuellement unifié avec le composant de thème existant (icône material "fill" 18px).
Version 0.17.9 2026-04-01 Accessibilité & UI
Confort de lecture (Smart Scroll)
- Added UI
réactive au défilement : Les icônes flottantes (Thème et Accessibilité)
s'effacent désormais automatiquement en fondu (
opacity: 0etpointer-events: none) au-delà d'un défilement de 150px équivalent à l'en-tête de page. Cela optimise drastiquement le confort de lecture sur petits écrans en évitant toute obstruction du texte courant, réapparaissant fluidement lors du retour en haut de page.
Accessibilité RGAA & Layout
- Added Masquage
Sémantique (.sr-only) : Intégration globale de la classe utilitaire
.sr-onlydansshared.cssavec l'ajout crucial dewhite-space: nowrap. - Fixed Tableaux
sur Mobile (Poids des Fichiers) : Correction d'un bug de débordement critique
(overflow) sur les écrans à largeur contrainte (320px). L'application de
display: blocksur la balise<caption class="sr-only">empêche désormais les longs intitulés destinés aux lecteurs d'écran d'altérer le calcul des largeurs du tableau, préservant la matrice responsive visuelle.
Version 0.17.8 2026-03-29 Accessibilité & Tableaux
Audit RGAA — Page Poids des Fichiers
- Changed
Présentation des données (Critère 5.1 RGAA) : Conversion des listes
<ul>en véritables tableaux HTML (<table>) avec en-têtes explicites, ajout de la balise<caption>sur chaque tableau pour l'identification obligatoire par les lecteurs d'écran. - Changed
Infobulles accessibles (
<abbr>) : Suppression de la colonne "Poids (Octets)" redondante. Le poids en octets est désormais exposé via un attributtitlesur une balise<abbr>au survol de la valeur en Ko, allégeant la lecture visuelle sans perte d'information. - Added En-têtes
de colonnes (Critère 5.7 RGAA) : Ajout de l'attribut
scope="col"sur chaque<th>pour une association explicite et sans ambiguïté entre les cellules d'en-tête et leurs colonnes de données. - Added Navigation
clavier (WCAG 2.1.1) : Ajout de
tabindex="0"etrole="region"sur les enveloppeurs scrollables (overflow-x: auto) afin de permettre aux utilisateurs de clavier de focaliser et faire défiler les tableaux aux résolutions réduites. - Fixed Landmarks
distincts (WCAG 1.3.1) : Correction d'un double landmark "region" portant le même
nom. Chaque
<caption>reçoit unidunique (ex :id="caption-projects"), et ledivscrollable pointe vers ce caption viaaria-labelledby, évitant toute redondance dans le Rotor des lecteurs d'écran. - Fixed Emojis
décoratifs (Critère 1.2 RGAA) : Masquage systématique des emojis décoratifs (📁)
derrière
aria-hidden="true"pour éliminer leur vocalisation superflue par les synthèses vocales. - Fixed Responsive
320px (WCAG 1.4.10) : Remplacement de
overflow: hiddenparoverflow-x: autoavec-webkit-overflow-scrolling: touchpour garantir la consultation sans perte d'information sur les écrans à 320px (iPhone 5s).
Version 0.17.7 2026-03-29 Accessibilité & UI
Accessibilité Avancée (RGAA / WCAG)
- Added Infobulles
(WCAG 1.4.13) : Ajout d'une fermeture globale sécurisée via la touche
Échappour rendre les infobulles annulables ("Dismissible") pour les utilisateurs naviguant à la souris, désengorgeant ainsi les zones de clics adjacentes si l'infobulle obstrue la vue. - Fixed Fluidité
du Focus Clavier : Suppression de l'injection dynamique du
tabindex="0"sur les balises sémantiques<abbr>. Cette action supprime un piège fréquent de la navigation au clavier ("Tab Tarpit") pour un parcours utile et rapide. - Added
Rétro-ingénierie SVG : Ajout systématique des attributs
aria-hidden="true"etfocusable="false"sur la trentaine d'indicateurs visuels décoratifs (status-box) couvrant les points de version. Résultat : une neutralité complète et aucun bruit intempestif lu par les lecteurs d'écran. - Fixed Retour de
l'humour, avec complaisance : Restauration purement valide de l'infobulle
fantaisiste masquée sur le bouton de retour en haut de page en utilisant le lien explicite à
la lecture ARIA, contournant ainsi intelligemment la limite native du vieil attribut
title.
Version 0.17.6 2026-03-28 Sémantique & Accessibilité
Audit Opquast / RGAA & Améliorations UX
- Changed
Séparation du fond et de la forme : Refactorisation 100% sémantique sur la page
d'accueil (remplacement du
<br>décoratif par une classe utilitaire sur un<span>). - Removed
Cohérence d'accessibilité (Opquast) : Retrait des attributs
accesskeyobsolètes des actions de contact pour éviter les conflits avec les outils d'assistance natifs. - Added
Avertissement de changement de contexte : Injection experte de la signalétique de
liens externes (icône visuelle
↗et texte lisible par les lecteurs d'écran.sr-only) afin de clarifier les redirections vers un nouvel onglet, assurant une conformité stricte au RGAA. - Changed
Sémantique et Performance des Études de cas : Remplacement des groupes de
libellés (tags) par de véritables listes non-ordonnées (
<ul>) pour asseoir la structure, correction d'anomalies de chiffrement, et ajout de l'attributdefersurlegacy.js.
Version 0.17.5 2026-03-27 Optimisation & UI
Maintenance & Performance CSS
- Removed
Nettoyage CSS : Suppression de code orphelin (anciennes classes telles que
.phase,.webinar-page, etc.) dansprojects.cssafin d'alléger le poids de la feuille de style. - Fixed Correction de cascade CSS : Réorganisation des règles CSS pour pallier un problème de spécificité masquant la palette de couleurs propre aux avatars de la page de recommandations.
Interface utilisateur (UI)
- Added Menu
interactif (Scroll-Spy) : Implémentation de l'effet "pilule inversée" (actif) au
défilement sur le menu local de la page Transparence &
Engagements, par un appel groupé à l'API
IntersectionObserverexistante.
Version 0.17.4 2026-03-27 Heuristiques & UI
Heuristiques de Nielsen & Accessibilité
- Added H3 —
Contrôle et Liberté (Fallback js) : Les boutons de contact email (« Travaillons
ensemble » et « Me contacter par email ») possèdent désormais un
hrefde repli pointant vers LinkedIn. Si le JavaScript est désactivé ou échoue, l’utilisateur n’est plus bloqué par unhref="#"silencieux, mais est redirigé vers une plateforme de contact alternative. - Added H7 —
Flexibilité et Efficience (Raccourcis) : Ajout d'attributs
accesskeypour les actions principales (Alt+Epour l'email,Alt+Lpour LinkedIn) et documentation de ces raccourcis viaaria-keyshortcutspour une découverte proactive par les technologies d’assistance.
Micro-optimisations UI (Études de cas)
- Fixed Alignement
des listes (Puces) : Rectification de l'alignement vertical du marqueur de liste
personnalisé (
::before) sursncf-voyageurs-ter.html. Abandon detop: 0au profit d'un ajustement fin (top: -0.15em) couplé à unline-heightnaturel pour cibler parfaitement le centre optique de la baseline du texte. - Fixed Alignement
des cartes numérotées : Suppression d'une marge
<p>conflictuelle et ajustement millimétré (margin-top: -2px) du badge numéroté (.card-number) pour corriger le léger décalage visuel inhérent au Flexboxalign-items: flex-start.
Version 0.17.3 2026-03-26 Fix & UX
Harmonisation CSS & Encodage
- Removed
Dédoublonnage CSS global : Suppression définitive des règles
CSS obsolètes (infobulles, modale, dark mode) encore présentes dans
style.css. L'intégralité du site repose désormais de façon stricte surshared.csspour les composants globaux. - Fixed Correction
d'encodage (Modale A11y) : Remplacement robuste
du caractère de fermeture par son entité HTML inaltérable (
✕) sur tous les boutons de la modale d'accessibilité, corrigeant un bug de double encodage (UTF-8). - Fixed Cohérence
de l'Accueil : Ajout de l'appel manquant à
shared.csssur les pagesindex.htmlet404.html, rétablissant instantanément le style masqué des infobulles et l'apparence unifiée des liens du footer.
Version 0.17.2 2026-03-26 Fix & UX
Ergonomie & Lisibilité
- Changed
Aération typographique : Augmentation de l'interligne
globale (
line-height: 1.6) sur les blocs de texte des études de cas (paragraphes, sous-titres, rôles) pour fluidifier la lecture. - Fixed Espacement
des déclencheurs tactiles : Ajout d'une marge
gap: var(--space-3)dans la modale d'accessibilité pour éviter la superposition graphique entre le texte des options et les boutons à bascule (switches). - Changed Conformité RGAA 1.4.12 : Ajustement rigoureux à 150 % de l'interligne des éléments de liste présents au sein de la modale de configuration.
Infobulles & Compatibilité iOS 12
- Changed
Infobulles intelligentes anti-débordement : Refonte complète
du moteur d'infobulles (
app.js) avec un système de détection des bords de fenêtre (Viewport Boundary Detection). Les infobulles très longues s'auto-ajustent latéralement sur petits écrans, tandis que la flèche d'ancrage se décale de manière inverse grâce à une variable CSS synchrone. - Changed
Généralisation et épuration : Extension de la mécanique
d'infobulles à d'autres éléments que les
<abbr>via la classe.has-custom-tooltip. Suppression globale des pointillés superflus (border-bottom) sur tous les liens équipés d'une bulle. - Fixed
Disponibilité Dark Mode (Safari 12) : Résolution du
dysfonctionnement total du bouton Dark Mode sous vieux iOS en intégrant un fallback
addListener()pour pallier l'absence de la méthode d'écoute moderne sur l'APImatchMedia. - Fixed Injection
des bibliothèques Legacy : Correction de l'oubli
des fichiers
legacy.jsetlegacy.csssur les sous-pages de projets. Les couleurs sRGB de secours s'appliquent correctement et l'élément<dialog>est de nouveau masqué au chargement au lieu de s'afficher comme un bloc natif sur iPhone 5s.
Version 0.17.1 2026-03-20 UI & Accessibilité
Living Style Guide
- Fixed Alignement des composants : Correction CSS de la direction flexbox des aperçus de composants évitant les débordements horizontaux inattendus. Alignement vertical repensé et suppression des marges globales perturbant l'affichage des composants dans le contexte isolé du Design System.
- Changed
Interactivité CSP-Compliant : Refactorisation complète des
événements interactifs de la modale de démonstration (fermeture au clic sur l'arrière-plan,
via la touche
Escape, et sur les boutons d'annulation) vers une délégation d'événements JavaScript. Élimination des attributsonclickpour correspondre à la CSP stricte instaurée en v0.17.0.
Version 0.17.0 2026-03-20 Sécurité & Perf
Sécurité HTTP & En-têtes
- Added CSP
Stricte & Extensions Navigateur : Refonte de la
politique CSP globale dans
.htaccessà destination d'un score "A+" certifié. Implémentation dedefault-src 'none'et sécurisation de l'exécution avecscript-src 'self'. Tolérance stratégique ciblée pour les extensions de diagnostic requises (via l'intégration de protocoles d'extension navigateur tels quechrome-extension:et endpoints d'analyse comme Fonts Ninja). - Added En-têtes
additionnels : Déploiement proactif et permanent
des en-têtes de confidentialité :
Referrer-Policy(en modestrict-origin-when-cross-origin) limitant les fuites inter-domaines, etPermissions-Policybloquant toute sollicitation des APIs matérielles (microphone, caméra, géolocalisation).
Qualité CSS & Transparence
- Removed
Éradication CSS "unsafe-inline" : Extraction de l'ensemble
des règles de styles et variables précédemment assignées directement via les balises "style"
sur les multiples pages de projet et la page courante (transparence, changelog, webinaires,
etc.). Celles-ci ont bénéficié de classes utilitaires et mutualisées globales associées aux
bibliothèques
projects.cssetshared.css. - Added
Transparence Technique : Ajout immédiat des certifications
tierces de
SecurityHeaderset deMozilla Observatorysur la page des engagements en l'arborant avec un grade A+, garantissant un niveau élevé face au Cross-Site Scripting (XSS).
Version 0.16.0 2026-03-17 Compatibilité & Responsive
Support Navigateurs Legacy (iOS 12 / Safari 12)
- Added
Dégradation gracieuse CSS : Création d'une feuille de style
dédiée (
legacy.css) servant de fallback automatisé. Substitution des variables de couleursoklch()par des valeurs hexadécimales sRGB, des unités viewport dynamiques (dvh) par leur équivalent classique (vh) et des fonctionsclamp()par de la typographie fluide sécurisée. - Added Polyfill
Modale & JS : Injection d'un script ciblé
(
legacy.js) fournissant un polyfill léger pour l'élément<dialog>(non supporté sur Safari < 15.4), garantissant l'accessibilité de la modale de paramètres (focus trap, backdrop, fermeture Echap). - Changed
Rétrocompatibilité ES2019 : Retrait du chaînage optionnel
(
?.) dans le code JavaScript principal au profit de gardes classiques (&&), assurant l'exécution sans erreur sur les moteurs JavaScript anciens des appareils vieillissants.
Responsive < 480px
- Fixed
Typographie Modulaire : Réajustement des limites basses de
la fonction
clamp()sur les éléments de titrage majeurs pour préserver le rythme typographique et éviter les ruptures de mots ou la ponctuation isolée sur les très petits écrans (ex. iPhone 5S, 320px de large). - Fixed Positionnement des Boutons d'Action : Regroupement des icônes d'interface flottantes ("Thème" et "Accessibilité") dans le quadrant supérieur droit sur mobile, évitant la superposition avec la grille de contenu.
Version 0.15.0 2026-03-13 Audit & Sécurité
Sécurité & Performance JavaScript
- Fixed Correction
XSS (chat.js) : Remplacement de l'usage direct
d'
innerHTMLsur les réponses du chatbot par un traitement viaDOMParser, éliminant tout vecteur d'injection de code malveillant. - Fixed Robustesse
API (chat.js) : Vérification du
Content-Typeavant le parsing JSON pour éviter un crash si le serveur retourne une erreur HTML (500, 502). - Changed
Événements souris (app.js) : Remplacement du listener
global
mouseoversur ledocumentpar des listenersmouseentercibles — libère le Main Thread lors des déplacements souris. - Changed
Modernisation JavaScript : Utilisation du
chaînage optionnel (
?.) pour les accès DOM potentiellement nuls.
Encodage UTF-8
- Fixed Encodage des caractères : Correction de pannes globales de rendu UTF-8 (mojibakes et accents littéraux perdus) sur la page Recommandations et Changelog.
Version 0.14.0 2026-03-04 Perf & Fixes
Optimisation rendu CSS
- Changed Suppression de l'Alpha Blending : Remplacement des opacités et couleurs avec transparence par des couleurs pleines solides dans les fichiers CSS. Cela améliore le rendu navigateur en allégeant les calculs de composition, notamment en Dark Mode.
Correctifs & Données
- Fixed Encodage des caractères : Correction de pannes globales de rendu UTF-8 (mojibakes et accents littéraux perdus) sur la page Recommandations et Changelog.
Version 0.13.0 2026-03-03 Refinement
Système de Design — CSS Tokens
- Changed
Synchronisation CSS : Alignement complet de
shared.csssurstyle.css. Intégration des déclarations@font-facemanquantes (Lufga, Space Grotesk, Recoleta Alt) et synchronisation des variables de tokens (social-proof, bordures dark mode). - Changed Cohérence visuelle : Portabilité de la barre de défilement personnalisée et des styles de sélection de texte sur l'ensemble des sous-pages du portfolio.
Ergonomie & Responsive
- Fixed Responsive
Modale : Correction du défaut de centrage
et de troncature de la modale d'accessibilité sur les petits écrans (iPhone 5s,
Redmi Note 11s) via une méthode de positionnement
inset: 0plus robuste et des largeurs basées surcalc(). - Fixed Typographie projet : Correction du bug de fallback sur les titres H1 des pages projets qui n'affichaient pas la police Recoleta par défaut.
Version 0.12.0 2026-03-03 Improvement
Modale d'accessibilité universelle
- Added Modale
d'accessibilité universelle : Injection du bouton
de paramètres et de la modale d'accessibilité sur toutes les pages HTML du site
(
404.html,transparence.html,changelog.html,recommandations.html,sncf-voyageurs-ter.html,style-guide.html). Les réglages (son, typographie dyslexie, animations réduites) persistent désormais vialocalStoragesur l'ensemble du site. - Added Typographie Dyslexie : Intégration de la police Atkinson Hyperlegible du Braille Institute comme alternative typographique accessible, avec espacement accentué.
- Fixed Icônes
mode sombre/clair : Correction du bug
d'affichage des icônes soleil/lune sur les sous-pages — passage d'une logique
style.displaybloquée par la CSP à une logique purement CSS via:root[data-theme]. - Changed
Harmonisation CSS : Migration des styles de la
modale d'accessibilité (
dialog.a11y-modal, interrupteurs, variables de couleurs) destyle.cssversshared.csspour une cohérence visuelle complète sur toutes les pages.
Politique CSP
- Changed CSP
adaptée au contexte portfolio : Simplification
de la
Content-Security-Policydans.htaccess— suppression des directives trop restrictives incompatibles avec les extensions navigateur. La politique retenue (frame-ancestors 'none'+ HSTS +nosniff) offre une protection proportionnée à un site statique sans données utilisateur. - Removed
Suppression des headers superflus : Retrait de
X-Frame-Options(redondant avecframe-ancestors),Referrer-PolicyetPermissions-Policynon nécessaires pour un portfolio statique.
Version 0.11.0 2026-03-02 Improvement
Design System — Tokens CSS
- Changed Design
System — Tokens CSS (P1) : Remplacement de toutes les valeurs
px« magiques » résiduelles par des variables CSS dansprojects.cssetstyle.csspour garantir la cohérence de la grille de 8px. - Removed
Nettoyage inline styles (P2) : Suppression des 17 attributs
style="margin-top: 0;"présents sur chaque.changelog-section-titledanschangelog.html— remplacés par une règle CSS dédiée dansprojects.css. - Removed
Landmark ARIA vide (P2) : Suppression du
<footer class="page-footer"></footer>vide danschangelog.html— un landmark sans contenu est une violation RGAA (critère 12.6). - Added AEO —
Sémantique LLM (P2) : Encapsulation de la liste de compétences
(
.skills-list) dans un<section aria-labelledby="skills-heading">dansindex.htmlpour faciliter l'extraction sémantique par les moteurs IA et LLMs. - Removed
Sécurité & CSP (P2) : Migration des derniers styles inline
(
.footer-linkset.performance-badges) vers les feuilles de styles externes, permettant la suppression de la directive'unsafe-inline'dans la Content Security Policy (CSP) via.htaccess.
SEO, UX & Architecture
- Changed
Refonte du Guide de Style : Migration intégrale des styles internes et inline de
style-guide.htmlvers une feuille de style externe dédiéestyle-guide.css. Adoption de classes sémantiques (BEM-light). - Added
Métadonnées Auteur (humans.txt) : Liaison systématique du fichier
humans.txtdans le<head>de toutes les pages via la baliselink rel="author", renforçant l'identité numérique et l'AEO. - Added Amélioration UX Page 404 : Ajout du Journal de bord dans la liste des ressources de secours sur la page d'erreur 404 pour réduire le taux de rebond.
- Removed
Nettoyage sémantique Recommandations : Suppression des titres
<h2>redondants dansrecommandations.html. Utilisation dearia-labelsur les<article>pour maintenir une accessibilité exemplaire sans pollution visuelle. - Removed Maintenance & Liens morts : Retrait définitif de toutes les références vers les pages obsolètes (Journal de bord et Accessibilité/Éco-conception en HTML séparé).
- Changed
Identité visuelle — Harmonisation Typographique : Application systématique de la
police Recoleta (via la variable
--font-heading) sur tous les titres principaux (h1) des sous-pages pour garantir une cohérence de marque Premium.
Version 0.10.0 2026-02-28 Improvement
Navigation Footer
- Added Design
Tokens : Implémentation complète d'un système de variables sémantiques (Design
Tokens) à l'échelle globale. Les espacements (grille de 8px), les teintes et les rayons de
bordures sont désormais gérés de manière centralisée dans
:root. - Fixed Correction
de l'espacement : Suppression du
paddinghorizontal sur.journal-linket neutralisation dugapdu conteneur flex via.footer-links { gap: 0 !important }, afin que lesmargindu pipe soient symétriques (8px de chaque côté). - Added
Propagation sur toutes les pages : Ajout du wrapper
<div class="footer-links">dans les cinq sous-pages et intégration des règles CSS dansprojects.csspour que les sous-pages bénéficient aussi du séparateur.
Version 0.9.9 2026-02-28 Fix
Affichage SVG
- Fixed Spécificité d'affichage SVG : Remplacement de l'utilisation de l'attribut HTML `hidden` au profit de déclarations de style "inline" (`display: none;` et `display: block;`) en JavaScript pour le basculement fiable et réactif du bouton Mettre en Pause / Lecture du "Phrase Rotator" sur la page d'accueil.
Version 0.9.8 2026-02-28 Feature
Modale d'accessibilité
- Added Panneau d'accessibilité : Ajout d'une modale permettant d'activer une typographie adaptée (dyslexie), de couper le son et de désactiver les animations.
- Added Contrôle des animations : Bouton interactif Pause/Lecture ajouté pour le texte défilant du Hero Header.
- Changed Conformité RGAA 4.1.2 : Amélioration ARIA des boutons à bascule (switch) pour les lecteurs d'écran.
Version 0.9.7 2026-02-27 Fix
Étude de cas SNCF
- Fixed Correction
Layout : Résolution des problèmes d'alignement et de disposition sur la page
sncf-voyageurs-ter.html. Centrage corrigé pour le contenu principal, la zone de contact et le footer, afin d'assurer la cohérence avec le reste du site. - Fixed Ajustement
Flexbox : Modification du comportement d'affichage de
body.case-studypour restaurer un flux de document normal, réparant ainsi un conflit visuel issu des restructurations CSS récentes.
Page Transparence
- Changed Badges de performance : Déplacement des indicateurs (EcoIndex et PageSpeed) du footer vers l'en-tête de la page Transparence et mutualisation de leur CSS dans la feuille de styles commune.
- Added Ancrage et
Navigation : Ajout d'une marge de défilement (
scroll-padding-top) et d'un défilement doux (scroll-behavior: smooth) sur le document pour corriger le fait que le menu masquait les titres de la section une fois l'ancrage activé. - Fixed Structure
CSS : Nettoyage d'une erreur (accolade superflue) dans
style.cssrétablissant la bonne application des media queries d'accessibilité.
Version 0.9.6 2026-02-27 Improvement
Design System & Architecture CSS
- Added Design
Tokens & Variables CSS : Implémentation d'un système de variables sémantiques
à l'échelle globale. Les espacements (grille de 8px), les teintes (primitives et
abstraites), et les rayons de bordures sont désormais gérés de manière centralisée dans
:root. - Added
Typographie Fluide : Remplacement des valeurs statiques de texte et des media
queries par des fonctions
clamp()pour assurer une fluidité typographique transparente entre mobiles et grands écrans. - Changed
Accessibilité des contrastes : Ajustement fin des teintes de survol et des badges
(ex : couleurs de la balise « Compétences » en
#EEEEEE) pour garantir le ratio de contraste, y compris dans le thème sombre.
Version 0.9.5 2026-02-25 Fix
Cohérence UI Footers
- Fixed
Harmonisation des footers : Alignement de
.version-linksur le style des liens de l'index — mêmefont-size(0.85rem),font-weight(500) etopacity(0.85). Suppression dutext-decoration: underlineincohérent sur.page-footer a. - Fixed Espacement
footer Recommandations : Remplacement des séparateurs
.par•et compactage du HTML sur une ligne pour un espacement strictement uniforme entre les éléments inline. - Fixed Correctif
.version-link: Passage endisplay: inline(suppression dupadding: 8px) pour éviter un espace visuel asymétrique lorsque le lien est inclus dans du texte courant.
Version 0.9.4 2026-02-25 Patch
Audit Sécurité & SEO
- Fixed Sécurité —
Email en clair (P0) : Suppression de l'email Gmail en clair dans le CSS
d'impression — remplacé par
attr(data-print-email)pour préserver l'obfuscation JS. - Fixed Sécurité —
Faux encodage Base64 (P0) : Suppression du faux encodage Base64 dans
more.js— l'URL du Book PDF est désormais directe avec commentaire explicatif honnête. - Added SEO —
og:title manquant (P1) : Ajout de la balise
og:titlemanquante dansindex.html— optimise le partage sur LinkedIn, WhatsApp et Facebook. - Changed AEO —
Schéma JSON-LD (P1) : Remplacement du schéma JSON-LD
PersonparCreativeWorksur la page étude de cas SNCF — meilleure indexation Knowledge Graph. - Fixed
Compatibilité Safari privé (P2) : Protection
try/catchajoutée surlocalStorage.getItemhors IIFE pour éviter un crash en navigation privée Safari. - Fixed
Compatibilité dark mode : Revert d'une régression sur la gestion des icônes
soleil/lune — retour à
style.displaypour garantir leur visibilité à l'initialisation. - Added
Accessibilité RGAA (P2) : Ajout du
citeattribut sur le<blockquote>et de la balise<cite>sur la source Frédérique Maurel — conformité critère 1.1. - Added
Performance RGESN (P2) : Réintégration de
content-visibility: autosur.social-proof— lazy rendering natif.
Optimisations SEO & Performance
- Fixed Meta description (OPT-01) : Correction de la virgule manquante et reformulation SEO plus explicite.
- Changed
JSON-LD Person (OPT-02) : Enrichissement avec
availableLanguage,address(Lyon / Auvergne-Rhône-Alpes) et ajout deCRO/UX WritingdansknowsAbout. - Added UX Toast
(OPT-06) : Toast accessible (
role="status",aria-live="polite") après clic sur le lien email — informe l'utilisateur et propose LinkedIn en alternative si le client mail est absent. - Changed RGPD
(OPT-09) : La date de disponibilité
validUntiln'est plus exposée en clair dans l'objet global JS — remplacée par un getter dynamique sur le DOM. - Fixed
Accessibilité (OPT-10) : Focus sur le
h2du dialog corrigé via:focus:not(:focus-visible)— outline conservé pour les utilisateurs clavier et lecteurs d'écran.
Version 0.9.3 2026-02-25 Improvement
Performance & Accessibilité
- Fixed
Performance (CLS) : Élimination du Cumulative Layout Shift sur la section
témoignages et amélioration du
min-heightdu rotateur de phrases sur mobile. - Fixed
Accessibilité (100%) : Correction du
label-content-name-mismatchsur les labels ARIA et renforcement du contraste des couleurs sur le badge de disponibilité et les signatures. - Changed Lighthouse : Atteinte du score cible de 100/100 en Accessibilité et SEO.
Version 0.9.2 2026-02-24 Fix
Accessibilité RGAA 4.1.2
- Fixed Contraste
parfait (Critère 3.3) : Augmentation des opacités sur les liens secondaires
(
.case-link,.journal-link, et pieds de page) pour garantir un ratio de contraste d'au moins 3:1 avec leur arrière-plan. - Added Liens textuels explicites (Critère 10.6) : Ajout systématique d'un soulignement visible indépendamment de la couleur d'accent pour tous les liens injectés de manière fluide dans du texte classique.
- Added Liens
contextuels (Critère 6.1) : Ajout d'attributs ARIA stricts (ex:
aria-labelspécifique sur "Voir le projet") pour que les lectures hors de leur contexte visuel demeurent toujours claires pour les lecteurs d'écran. - Changed Accessibilité des documents PDF (Critère 13.3) : Les liens vers les documents téléchargeables informent désormais explicitement l'utilisateur de l'extension de fichier et de l'ouverture dans une nouvelle fenêtre.
Changelog
- Added Uniformisation du Changelog : Création de cette page unique et versionée permettant de documenter systématiquement toutes les implémentations pour plus de transparence technique.
- Added Version Link : Les métadonnées du pied de page pointent désormais interactivement vers le Changelog.
Version 0.9.1 2026-02-23 Improvement
Architecture structurelle
- Changed
Harmonisation CSS : Harmonisation des espacements marginaux et des largeurs
maximales parentes (alignement sur
index.html) sur la totalité des sections principales du site (page « Transparence », « Recommandations » et vues documentaires). - Changed
Sémantique Recommandations : Refonte de la disposition sémantique sur la page de
Recommandations. Implémentation complète de balises
<figure>/<figcaption>afin de nouer le témoignage de retour client (blockquote) avec le nom et rôle de sa source attitrée pour le respect de la norme RGAA (Critère 9.4).
Ergonomie & Navigation
- Added Retour en Haut : Ajout fluide d'une ancre d'interaction « Retour en Haut » permettant un redressement scroll rapide sur les grands gabarits transversaux (pages « Bonnes Pratiques » et « Témoignages »).
- Changed
Refonte du module Skip-link : Remplacement de l'ancienne méthode de masquage CSS
basée sur une animation (
transform: translateY(-150%)qui provoquait des bugs de positionnement) par une méthode d'escamotage robuste inspirée du motif.sr-onlys'affichant en positionfixedau clavier.
Version 0.9.0 2026-02-01 Improvement
Page Transparence & Engagements
- Changed Architecture de la page : Remaniement de l'approche communicationnelle d'accessibilité vers un espace dédié. Remplacement de l'architecture modale « RGESN » en un répertoire exhaustif global des engagements Web et Dev.
- Changed Index de contenu : Restructuration en huit catégories méticuleuses reflétant les standards majeurs de sécurité et d'ingénierie front-end.
- Added Sémantique ARIA & SEO : Premières itérations architecturales pour un meilleur encadrement ARIA et sémantisme SEO en Single Page (révision des fusions canoniques et descriptions de l'auteur).
Version 0.8.1 2026-02-12 Patch
Design System & Typographie
- Fixed Cohérence
Typographique : Harmonisation des composants textuels et restauration de la
typographie de marque (
Plus Jakarta Sans) de façon consistante sur tous les nœuds de la page d'accueil (Hero section, animations rotatives et liens). - Fixed Performances d'affichage : Alignement de la nomenclature des polices hébergées localement avec les déclarations CSS pour garantir l'indépendance de chargement (zéro tracker externe / Google Fonts).
- Fixed Identité
Verbale : Restauration du discours de marque originel sur les phrases rotatives
(
app.js) pour refléter précisément la philosophie d'interface ciblée.
Impression (Print CSS)
- Added Lisibilité Papier : Refonte du comportement physique de l'interface lors de l'impression : nettoyage des cibles interactives, passage en schéma colorimétrique strict (Noir & Blanc), et épuration des ancrages non pertinents pour un rendu net sur papier.
Version 0.8.0 2026-02-11 Improvement
SEO Technique & AEO
- Added Données
Structurées : Enrichissement sémantique des
structures de données (JSON-LD) avec la triple intégration des
schémas
WebSite,Person, etProfessionalServicepour maximiser la lisibilité algorithmique. - Added Métadonnées Réseaux Sociaux : Actualisation des balises Open Graph (Facebook/LinkedIn) et Twitter Cards afin d'améliorer l'expérience de partage des URLs.
- Added Crawl
Budget : Affinage du contexte des robots d'exploration : validation des URLs
canoniques, attributs
d'accessibilité sur les icônes de structure, et configurations ciblées dans le
robots.txt.
Version 0.7.0 2026-02-10 Improvement
Mode Sombre & Design System
- Added Thème Sombre Adaptatif : Implémentation complète d'un Dark Mode adaptatif, respectant les préférences du système d'exploitation et laissant un droit de forçage manuel à l'utilisateur via une interface de toggle dédiée.
- Added Palette Réactive : Mise en place d'une architecture de variables CSS natives gérant des palettes sémantiques réactives selon le contexte d'éclairage.
- Added Grille de 8px : Rationalisation des espaces sur une grille rythmique de 8 pixels, augmentant la clarté, l'aération et la cohérence de l'Information Architecture (IA).
- Added Éco-conception : Mise en conformité RGPD (suppression des traceurs inutiles) et RGESN (allègement des actifs multimédias pour l'éco-conception).
- Added Accessibilité Mobile : Retouches UI ciblées assurant un dimensionnement suffisant (Touch Targets) des icônes pour la navigation tactile.