Changelog
Historique des versions et de l'amélioration continue
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.18.0 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.