📄 mdseal

À propos de mdseal

mdseal (mdseal.dev) convertit et scèlle des documents, sur un serveur souverain et sous licence libre : Markdown ou HTML → PDF, diaporama PDF (16:9) ou PowerPoint (PPTX), puis signature et protection du PDF. Aucune donnée n'est envoyée à un service externe — tout est rendu ici.

Cet outil s'est d'abord appelé docme. Le nom a changé quand le sceau est devenu ce qui compte : convertir est une commodité, sceller ne l'est pas. Le récit ci-dessous est celui de docme, et il reste vrai — on ne réécrit pas une origine.

D'où vient mdseal

De deux pages. RestoTrax — le logiciel de restaurant de l'écosystème — porte une aide et un à propos écrits en Markdown (pages/aide.md, pages/a-propos.md), rendus à l'écran par @mostajs/markdown-html. À l'écran, tout allait bien. Il a fallu les remettre à quelqu'un — un exploitant, un comptable, un formateur — et un écran ne se remet pas. C'est ce besoin-là, et rien de plus ambitieux, qui a produit cette chaîne.

Ce qu'on a appris en chemin vaut d'être écrit ici, parce que c'est le piège où l'on tombe une fois : la documentation écrite et la documentation engendrée par le code ne se rendent pas avec le même outil.

Engendrée par le codeÉcrite en Markdown
Ce que c'estce que le logiciel est : modules composés, API, exportsce qu'on a pensé : études, audits, plans, décisions, articles
Sa sourcepackage.json, llms.txt, les en-têtes — jamais une mainun .md versionné, rédigé
À l'écran@mostajs/docs-ui@mostajs/markdown-html
À remettreon la régénèremdseal, cette page-ci

docs-ui échappe tout ce qu'il reçoit : il attend de la donnée, pas de la prose. Lui confier un guide rédigé l'afficherait caractère par caractère, balises comprises — ce n'est pas un manque, c'est sa nature. Symétriquement, une liste de modules recopiée à la main est fausse dès le module suivant, et personne ne s'en aperçoit. La règle de maison en a tiré son §9.bis, où docme est nommée chaîne canonique de la documentation écrite.

Technologie — composition, pas réinvention

mdseal est une simple interface au-dessus de l'écosystème @mostajs/*, assemblée par composition :

BriqueRôle
@mostajs/markdown-htmlMarkdown → HTML (zéro-dépendance)
@mostajs/doc-themes + @mostajs/palettethèmes à contrastes validés (source : palette.amia.fr)
@mostajs/doc-exportorchestration (le cœur mince) — et, depuis sa 0.2.1, la commande doc-export
@mostajs/doc-driver-chromeHTML → PDF (Chrome headless)
@mostajs/doc-driver-pandocMarkdown → PPTX (pandoc)
@mostajs/pdf-sign + @mostajs/pdf-sign-uisignature PAdES et permissions AES-256 (moteur pyhanko)

Le cœur est zéro-dépendance ; les moteurs lourds (navigateur, pandoc, pyhanko) sont des drivers interchangeables — on adopte le meilleur outil du monde par besoin, jamais on ne le réinvente. La signature en est le dernier exemple : mdseal ne connaît ni PKCS#7 ni PAdES, il compose un module qui, lui, ne connaît aucun métier.

Ce site n'a aucun privilège sur la commande : les deux appellent le même cœur, et c'est ce qui les empêche de diverger. Ce qui est réparé dans le module l'est des deux côtés le même jour.

Les thèmes des documents suivent la même source de marque que la vitrine hadhinat.amia.fr : palette.amia.fr (Palette Studio). La palette du projet est récupérée puis dérivée et validée localement.

Auteur & licence

Conçu et développé par Dr Hamid MADANI <drmdh@msn.com>. Logiciel libre sous licence AGPL-3.0-or-later.