Tes réglages d'affichage
Active immédiatement les paramètrès qui te rendent la lecture plus confortable. Ces réglages sont mémorisés sur ton navigateur.
Notre engagement
Humanix-Cybersecurity s'engage à rendre la plateforme Humanix Académie accessible conformément à l'article 47 de la loi n° 2005-102 du 11 février 2005 et au décret n° 2019-768 du 24 juillet 2019, en visant la conformité au RGAA 4.1 niveau AA (équivalent WCAG 2.1 AA).
La plateforme Humanix Académie n'est pas légalement tenue de cette conformité (l'obligation s'applique aux services publics et aux entreprises de plus de 250 M€ de CA), mais nous l'adoptons volontairement parce que former à la cybersécurité en excluant les personnes en situation de handicap serait incohérent avec notre mission.
État de conformité
- Contraste libellés secondaires (RGAA 3.2) : 94 occurrences de
text-gray-400sur fond clair (ratio 2.84:1, échec WCAG AA) remplacées partext-gray-500(ratio 4.61:1, conforme). Les usages légitimesdark:text-gray-400(mode sombre) ont été préservés. - Légendes de tableaux (RGAA 5.4) : 15 tableaux ont reçu un
<caption className="sr-only">descriptif (pages admin, profil, comparatif, tarifs, sécurité, tenants superadmin). - Landmarks explicites (RGAA 9.1) : audit révèle que les landmarks étaient déjà bien marqués dans le code (
<nav aria-label="Navigation principale">sur HeaderBar,<footer aria-label="Pied de page">sur SiteFooter,<aside aria-label="Navigation console">sur AdminSidebar). L'audit v1.0 sous-estimait. Ajout mineur :aria-label="Sections console admin"sur la nav imbriquée de la sidebar pour distinguer les navs.
Méthode d'évaluation
L'évaluation a été réalisée par auto-audit interne approfondi, en analysant le code et les pages selon les 13 thématiques du RGAA 4.1 :
- Images, cadres, couleurs, multimédia, tableaux, liens, scripts, éléments obligatoires, structuration de l'information, présentation de l'information, formulaires, navigation, consultation.
Tests croisés avec NVDA (Windows), VoiceOver (macOS), navigation clavier seule, et zoom 200 %.
Résultats des tests
Synthèse des points de contrôle évalués au 26/05/2026 sur les 13 thématiques du RGAA 4.1 :
| Thématique RGAA | Score | État |
|---|---|---|
| 1. Images (alt, décoratives) | 85 % | Bon - alt présent sur 99 % des images, à vérifier sur quelques modules MDX |
| 2. Cadres (iframes) | 95 % | Très bon - aucune iframe dans la plateforme |
| 3. Couleurs et contrastes | 90 % | Très bon (v1.1) - 94 usages text-gray-400 sur fond clair remplacés par text-gray-500 (ratio 4.61:1, conforme WCAG AA). Restent à auditer les fonds personnalisés (gradients custom) |
| 4. Multimédia (audio TTS) | 90 % | Très bon - TTS Piper sur tous scénarios, transcriptions textuelles fournies |
| 5. Tableaux (caption, scope) | 95 % | Très bon (v1.1) - scope="col" partout, et 15 tableaux ont reçu un <caption className="sr-only"> descriptif |
| 6. Liens (nom accessible) | 88 % | Bon - aria-label sur liens icône-only, pas de 'cliquez ici' |
| 7. Scripts ARIA (modales, dropdowns) | 92 % | Très bon - aria-expanded/controls présents, focus trap modales |
| 8. Éléments obligatoires (lang, title, skip-link) | 95 % | Très bon - <html lang='fr'>, page title unique, skip link en haut |
| 9. Structuration (h1-h6, landmarks) | 92 % | Très bon (v1.1) - audit révèle que les landmarks étaient déjà bien marqués (<nav aria-label> sur HeaderBar/Footer/AdminSidebar). Ajout aria-label sur la nav imbriquée AdminSidebar pour distinction |
| 10. Présentation (zoom 200 %, motion) | 88 % | Très bon - zoom 200 % sans perte, prefers-reduced-motion respecté |
| 11. Formulaires (label, erreurs) | 78 % | Bon - <label htmlFor> partout, role='alert' sur erreurs, quelques inputs admin à revoir |
| 12. Navigation (multiple méthodes, aria-current) | 85 % | Bon - aria-current='page' partout, sitemap.xml présent, plan du site dédié à venir |
| 13. Consultation (limite temps, redirects) | 90 % | Très bon - aucun mouvement obligatoire, aucune limite de temps imposée |
Score global pondéré v1.1 : ~91 %. Les 3 axes prioritaires identifiés en v1.0 sont résolus (contraste +25 pts, tableaux +25 pts, landmarks +20 pts). Reste à traiter avant audit externe : sous-titres synchronisés vidéos (V2 contenu), navigation clavier point-par-point sur charts Recharts, audit RGAA détaillé par cabinet certifié pour viser 95 %+.
Contenus non accessibles
Non-conformités résiduelles
- Vidéos pédagogiques (V2 contenu) : les futurs contenus vidéos n'ont pas encore de sous-titres synchronisés. Une transcription textuelle est cependant proposée pour chaque scénario, et le TTS lit l'intégralité du contenu écrit.
- Tableaux complexes très denses dans certaines pages admin (rapport de conformité, statistiques) : les en-têtes utilisent
scope="col"et le contenu est lisible, mais pas encore deheaders/idpour les cellules de données croisées. Impact limité car les tableaux restent simples. - Mascotte évoluée niveau 4-5 : l'emoji principal et le nom sont annoncés via
aria-label, mais les détails visuels secondaires (couronne dorée, particules ✦) ne sont pas verbalisés au-delà du libellé "Niveau X". Lecture acceptable mais perfectible. - Charts Recharts (impact business) : les graphiques exposent leur tooltip au passage souris/touch mais ne sont pas encore navigables au clavier point par point. Les données chiffrées sont disponibles en clair en-dessous de chaque graphique.
✓ Non-conformités résolues récemment
- Contraste libellés secondaires (RGAA 3.2 / WCAG 1.4.3) — résolu 12 mai 2026, v1.1 : 94 occurrences de
text-gray-400sur fond clair (ratio 2.84:1, échec WCAG AA) remplacées partext-gray-500(ratio 4.61:1, conforme) via patch automatisé Python avec lookbehind négatif pour préserver les usages légitimesdark:text-gray-400sur fond sombre. Audit : 270 occurrencesdark:préservées, 94 isolées corrigées. - Légendes de tableaux (RGAA 5.4) — résolu 12 mai 2026, v1.1 : 15 tableaux ont reçu un
<caption className="sr-only">descriptif (pages admin TeamTable, AtRiskUsers, AnecdoteAdmin, GroupsManager, WebhookTable, UsersTable, ApiKeysManager, CsvImporter, MarkdownView ; pages publiques tarifs, comparatif, sécurité ; superadmin tenants ; legal layout). Lecteurs d'écran annoncent désormais un contexte avant la lecture du tableau. - Landmarks ARIA explicites (RGAA 9.1) — vérifié 12 mai 2026, v1.1 : audit révèle que les landmarks étaient déjà bien marqués dans le code (
<nav aria-label="Navigation principale">sur HeaderBar,<footer aria-label="Pied de page">sur SiteFooter,<aside aria-label="Navigation console">sur AdminSidebar). L'audit v1.0 sous-estimait ce point. Ajout mineur :aria-label="Sections console admin"sur la nav imbriquée de la sidebar admin pour distinguer les deux navs. - ThemeToggle sur mobile : les boutons "Clair / Sombre / Auto" cachaient leur libellé en classe
hidden sm:inline. Sur mobile, un lecteur d'écran annonçait juste l'icône. Fix :aria-labelexplicite +aria-hiddensur l'emoji pour éviter la double annonce. - Bouton de fermeture du drawer admin (
AdminSidebar) :aria-labelprésent mais le caractère ✕ n'était pas marquéaria-hidden→ double annonce ("X, fermer le menu"). Fix : wrap dans<span aria-hidden>. - Bouton "Rechercher" observatoire fuites : l'emoji 🔍 n'était pas marqué
aria-hidden→ annoncé "loupe rechercher". Fix :aria-hiddensur l'emoji, le texte "Rechercher" suffit. - Confettis et animations : annoncés via LiveRegion ARIA ("Bonne réponse !", "Niveau X débloqué"). Désactivés si
prefers-reduced-motion. - Modale level-up : focus trap, ESC pour fermer, retour automatique du focus à l'élément déclencheur.
- Boutons icônes-only (TTS, theme, share) : tous équipés d'
aria-labelexplicite. - Navigation :
aria-current="page"sur le lien actif,aria-labelsur la nav principale. - EpisodePlayer : changements de step et choix annoncés via LiveRegion.
Dérogations pour charge disproportionnée
Aucune dérogation pour charge disproportionnée n'est invoquée à ce jour.
Contenus tiers non assujettis
Les modules contribués par la communauté (marketplace) sont modérés mais leurs auteurs sont responsables du respect de l'accessibilité. Une charte d'accessibilité contributeurs est en cours de rédaction (à venir).
Alternatives proposées
En attendant la conformité totale, voici les alternatives mises en place :
- Lecture audio (TTS) sur tous les scénarios, débriefs et articles librairie - bouton "Écouter l'article".
- Mode facile (texte agrandi, espacement augmenté) activable en haut de page.
- Mode sombre pour réduire la fatigue visuelle.
- Magic link sans mot de passe pour éviter la friction de saisies complexes.
- Navigation clavier complète sur le player d'épisode (touches 1-4 et Entrée).
- Skip link "Aller au contenu principal" pour les utilisateurs de lecteurs d'écran.
- Connexion par QR code + prénom en projet pour à venir (utilisateurs sans email pro ou avec déficience cognitive).
Technologies d'assistance compatibles
L'application est testée et fonctionne avec :
- NVDA (Windows) - lecteur d'écran open-source
- VoiceOver (macOS / iOS) - lecteur d'écran natif Apple
- TalkBack (Android) - lecteur d'écran natif Google
- Navigation clavier seule (Tab, Maj+Tab, Entrée, Espace, flèches, Échap)
- Zoom navigateur jusqu'à 200 % sans perte d'information
- Reconnaissance vocale (Voice Control macOS, Dragon NaturallySpeaking) - supportée pour les actions principales
Signaler un obstacle
Vous avez rencontré un obstacle sur la plateforme ? C'est notre responsabilité de le corriger. Décrivez-nous le problème par email avec votre contexte (équipement, navigateur, technologie d'assistance utilisée) :
✉️ accessibilite@humanix-cybersecurity.fr
Nous nous engageons à répondre sous 5 jours ouvrés et à corriger ou contourner l'obstacle dans les meilleurs délais. Si la correction technique demande du temps, nous proposerons une alternative immédiate (transcription, support direct, etc.).
Voies de recours
Si vous constatez un défaut d'accessibilité non résolu après nous avoir contactés, vous pouvez :
- Saisir le Défenseur des droits : www.defenseurdesdroits.fr
- Délégué local du Défenseur des droits : trouver un délégué près de chez vous
- Adresse postale du Défenseur des droits : Défenseur des droits, Libre réponse 71120, 75342 Paris CEDEX 07 (gratuit, sans timbre)