Skip to content

feat(portail): finitions — casse, 404, partage, PDF des textes, accessibilité - #6

Merged
PhilippeVienne merged 11 commits into
mainfrom
feat/finitions-portail
Sep 27, 2026
Merged

PhilippeVienne merged 11 commits into
mainfrom
feat/finitions-portail

Conversation

@PhilippeVienne

@PhilippeVienne PhilippeVienne commented Sep 27, 2026 •

Copy link
Copy Markdown
Contributor

Finitions du portail : casse française, page 404, image de partage, textes juridiques en PDF et contrôle d'accessibilité en CI.

Dépend de #4 puis #5 : leurs commits apparaissent ici tant qu'elles ne sont pas fusionnées. Commits propres à cette PR : ec6f21a, a1107db, c16560d, 88c1fbc, c1bb196.

Casse française (ec6f21a)

  • 62 titres des pages de documentation (cadrage, PSSI, plan de fin d'activité, charte, organisation technique, guide préfecture, réunions, bulletin d'adhésion).
  • Textes juridiques soumis au vote inchangés (statuts, règlement intérieur, PV, rescrit, résolution) : leurs majuscules marquent des termes définis. Ancres inchangées.

404 et partage (a1107db)

  • Page 404 bilingue avec liens vers les rubriques, à la place du « 404 - Not found » de Material.
  • Image Open Graph par défaut aux couleurs de la couverture (scripts/build_og_image.py) ; le livre blanc garde la sienne.
  • Pied de page bleu nuit.

Textes juridiques en PDF (c16560d)

  • Projet de statuts (16 p.), règlement intérieur (9 p.) et charte d'éthique (4 p.) en PDF balisé : page de garde, sommaire paginé, en-tête courant et signets ajoutés par scripts/export_pdf.py sans modifier les textes (seule une métadonnée pdf: est ajoutée en tête).
  • Icône de téléchargement PDF à côté des actions de page.
  • Validation veraPDF et artefact des PR étendus aux cinq PDF.

Accessibilité (88c1fbc)

  • scripts/check_a11y.js : pa11y (axe, WCAG 2 AA) sur toutes les pages du sitemap ; échec sur les violations confirmées, liste des cas qu'axe ne sait pas trancher.
  • Corrections : contraste de la coloration syntaxique et du texte secondaire des schémas ; blocs de code défilants focalisables.

Listes des textes juridiques (c1bb196)

PhilippeVienne and others added 11 commits September 27, 2026 09:35
PDF : grille des chiffres clés sur trois colonnes (la grille portait sur
le conteneur et tassait les cartes), sommaire avec numéros de page et
points de conduite, titres hiérarchisés, en-tête courant de section,
texte justifié avec césure, encadrés et tableaux sans ombre, couverture
avec bandeau et filet d'accent.

Écran : en-tête du livre blanc restylé, fiche d'identification sans ligne
d'en-tête vide, titres plus marqués et encadrés plus lisibles.

Les deux PDF restent conformes PDF/UA-1 (veraPDF).

Co-authored-by: Claude <noreply@anthropic.com>
… blanc

- Police Inter (OFL 1.1, sous-ensemble latin) auto-hébergée pour tout le
  portail, sans service tiers ; embarquée dans le PDF et ses schémas, dont
  le rendu ne dépend plus des polices de la machine de génération.
- Schémas légendés et numérotés (figure 1, figure 2), ancrés sur
  #figure-N ; renvoi vers la figure 2 depuis le texte.
- Couverture du PDF à fond perdu aux couleurs du logo en version claire,
  mentions en bas de page.
- Signets du PDF : sections, annexes et sommaire au premier niveau,
  sous-sections repliées, sans le titre et le sous-titre masqués.
- Logo vertical sombre sans masque SVG : WeasyPrint ignorait le masque et
  effaçait l'anneau du sceau. Rendu inchangé dans les navigateurs.
- Césure avec un trait d'union ASCII, présent dans la police.

Les deux PDF restent conformes PDF/UA-1 (veraPDF).

Co-authored-by: Claude <noreply@anthropic.com>
Mêmes étapes de construction que le déploiement, sans déploiement ni
secret : build strict, export des PDF du livre blanc, validation veraPDF,
liste des polices embarquées et PDF joints en artefact pour relecture.

Co-authored-by: Claude <noreply@anthropic.com>
Sans Ubuntu Sans ni Liberation Sans (cas du runner GitHub), le texte du
logo tombait sur DejaVu Sans, plus large : la signature débordait et était
rognée sur la couverture du PDF. WeasyPrint trouve Inter via @font-face ;
les navigateurs, qui affichent le SVG comme une image, restent inchangés.

Co-authored-by: Claude <noreply@anthropic.com>
- Palette personnalisée aux couleurs du logo : en-tête et onglets bleu
  nuit, liens bleus, accent bleu ciel en thème sombre.
- Titres sombres et gras sur tout le site, encadrés plus lisibles, cartes
  plus sobres ; plus de mention « Made with Material for MkDocs ».
- Accueil : bandeau pleine largeur (overrides/home.html), engagements
  illustrés de pictogrammes au lieu d'emojis, cartes de documentation en
  deux colonnes, encadré [!NOTE] et liste réparés.
- Organigramme de gouvernance en SVG local (scripts/build_diagrams.py),
  lisible dans les deux thèmes : le portail ne charge plus Mermaid depuis
  un service tiers.
- Titres et navigation en casse française, sans emojis.

Co-authored-by: Claude <noreply@anthropic.com>
Plus aucune page n'utilise Mermaid depuis le passage de l'organigramme de
l'accueil en SVG local.

Co-authored-by: Claude <noreply@anthropic.com>
Titres et intertitres du cadrage, de la PSSI, du plan de fin d'activité,
de la charte, de l'organisation technique, du guide préfecture, des
réunions et du bulletin d'adhésion. Les textes juridiques soumis au vote
(statuts, règlement intérieur, PV, rescrit, résolution) sont inchangés :
leurs majuscules y marquent des termes définis. Les ancres, générées en
minuscules, ne changent pas.

Co-authored-by: Claude <noreply@anthropic.com>
- Page 404 (servie aussi pour les 403) en français et en anglais, avec
  les liens vers les rubriques principales, à la place du « 404 - Not
  found » de Material.
- Image Open Graph par défaut (1200 × 630) aux couleurs de la couverture
  du livre blanc, générée par scripts/build_og_image.py : toutes les pages
  ont désormais un aperçu de partage ; le livre blanc garde le sien.
- Pied de page en bleu nuit, comme l'en-tête.

Co-authored-by: Claude <noreply@anthropic.com>
- scripts/export_pdf.py exporte aussi le projet de statuts, le règlement
  intérieur et la charte d'éthique. Pour ne pas modifier ces textes, il
  ajoute au HTML une page de garde (charte du livre blanc) et un sommaire
  paginé des titres, datés du dernier commit de la source.
- Gabarit de page otspidoc : pied de page propre à chaque document, en-tête
  courant de section, titres enchaînés sans saut de page, signets limités
  aux titres et articles.
- Icône de téléchargement PDF à côté des actions de page, pour les pages
  qui déclarent `pdf:` dans leurs métadonnées.
- Validation veraPDF et artefact des PR étendus aux cinq PDF.

Les cinq PDF sont conformes PDF/UA-1 (veraPDF).

Co-authored-by: Claude <noreply@anthropic.com>
- scripts/check_a11y.js contrôle toutes les pages du sitemap avec pa11y
  (moteur axe) ; seules les violations confirmées font échouer la CI, les
  cas qu'axe ne sait pas trancher (texte des schémas SVG) sont listés.
- Étape ajoutée au workflow des pull requests, avec le Chrome du runner.
- Corrections : gris de coloration syntaxique et texte secondaire des
  schémas assombris (#4b5563, au-dessus de 4,5:1) ; blocs de code
  défilants rendus focalisables au clavier.

Co-authored-by: Claude <noreply@anthropic.com>
… listes

Treize listes suivaient directement leur phrase d'introduction : Markdown
les fusionnait avec elle en un seul paragraphe (« 1. … ; 2. … »), sur le
site comme dans les PDF. Correction de forme uniquement : seules des lignes
vides sont ajoutées, aucun mot n'est modifié.

Co-authored-by: Claude <noreply@anthropic.com>
@PhilippeVienne
PhilippeVienne merged commit a0bb3ad into main Sep 27, 2026
2 checks passed
@PhilippeVienne
PhilippeVienne deleted the feat/finitions-portail branch September 27, 2026 11:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant