Console du système de design
/_admin/design-system dessine le système de design déclaré par votre configuration, aux valeurs avec lesquelles il s'affiche réellement. Les points d'accès d'export et sovrium design-system transmettent le même contenu à une machine, sous forme de texte ; cette page en est la version qu'une personne lit.
Elle est réservée aux administrateurs et renvoie 404 à toute autre personne, et elle est en lecture seule. Rien n'y modifie la configuration : la console est une console de données d'exploitation, et le système de design fait partie de ce qu'elle reflète.
Ce que montre la page
Trois sections, chacune sous forme de cadre d'aperçu rendu par le vrai moteur de rendu avec vos vrais jetons.
| Section | Ce qu'elle dessine |
|---|---|
| Fondations | Tous les jetons avec lesquels l'application s'affiche — couleur, typographie, espacement, rayons, points de rupture, durées — dessinés à la valeur qu'ils prennent dans le schéma que vous lisez. |
| Jetons en situation | Les mêmes jetons composés en surfaces, pour qu'une combinaison se juge à l'œil plutôt qu'à partir d'une liste. |
| Voix et usages | Les règles que suit un rédacteur ici : les principes, la façon dont l'application s'adresse au lecteur, le ton par moment, et ce à quoi sert chaque couleur. |
Chaque cadre porte un lien Ouvrir la page complète vers /_admin/design-system/preview/{section} — foundations, ui-kit ou voice. Ajoutez ?scheme=dark à n'importe quel aperçu pour le lire dans la palette sombre : les valeurs affichées à côté de chaque échantillon suivent le schéma, de sorte que la page n'étiquette jamais un échantillon avec une couleur qu'elle n'affiche pas.
Le catalogue de composants
Sous ces sections, le catalogue affiche un spécimen par type de composant, groupé par catégorie. Chaque catégorie possède sa page complète, à /_admin/design-system/preview/components/{category}.
| Catégorie | Types | Dessinés |
|---|---|---|
form-controls |
11 | Tous. |
data |
10 | Un seul — data-table. Les neuf autres sont signalés. |
structural |
2 | Tous. |
layout |
10 | Huit ; modal et tab-panel sont signalés. |
Un type qui n'est pas dessiné est nommé quand même, avec sa raison. C'est tout l'intérêt du catalogue : un titre au-dessus d'une case vide affirmerait que le vide est le design. Trois raisons apparaissent :
- Lit des enregistrements dans l'une de vos tables. Sept des dix types
datasont liés par construction à une table d'exploitation, et un cadre d'aperçu ne porte aucune donnée d'exploitation.data-tablefait exception : sa source de données accepte le point d'accès de démonstration de la plateforme, il est donc dessiné sur des lignes qui n'appartiennent à personne. - Affiche un contrôle d'écriture actif, ou n'a pas d'apparence en ligne.
modals'affiche comme une surcouche fermée : il n'a rien à montrer en ligne.formetdata-formsont refusés pour une raison plus forte, ci-dessous. - Accepté par le schéma sans moteur de rendu derrière.
tab-panelpasse la validation, et une page qui l'utilise affiche une simplediv. Le catalogue signale le manque plutôt que d'en dessiner la conséquence.
Aucun cadre d'aperçu ne porte de chemin d'écriture. La catégorie editors — schema-json-editor, schema-yaml-editor, schema-form-editor, schema-ai-agent — est exclue définitivement, et form et data-form sont exclus de la catégorie data, parce que ces six composants embarquent un contrôle d'envoi actif. Ce n'est pas une tâche en attente : une console qui modifie la configuration est précisément le plan que Sovrium choisit de ne pas livrer, et un cadre d'aperçu n'est pas la porte par laquelle il revient.
Le lien de partage
Le public d'un système de design est plus large que les personnes disposant d'un compte sur votre instance : des designers, une agence, un interlocuteur côté client. GET /s/design-system/{token} leur donne la charte sans leur donner de compte.
Le panneau Lien de partage de la console en génère un. Le lien est non répertorié — il n'apparaît dans aucun plan de site, aucune navigation, aucune liste de pages — et il est révocable.
| Opération | Point d'accès | Remarques |
|---|---|---|
| Générer | POST /api/admin/design-system/shares |
201 avec l'identifiant, la date de création, le jeton et l'URL. |
| Lister | GET /api/admin/design-system/shares |
Les partages actifs, métadonnées uniquement : identifiant et date de création. |
| Révoquer | DELETE /api/admin/design-system/shares/{id} |
200 une fois ; 404 pour un identifiant inconnu ou déjà révoqué. |
| Lire | GET /s/design-system/{token} |
Anonyme. Aucune connexion, aucun cookie, aucun compte. |
Le jeton n'est affiché qu'une seule fois, dans la réponse à la génération. Il n'est conservé que sous forme d'empreinte SHA-256 : rien ne peut donc le restituer — ni le point d'accès de listage, ni le journal d'audit, ni une ligne de log. C'est ce qui donne son sens à la révocation : un exploitant capable de relire un lien n'apprendrait jamais qu'il a fuité. Si vous perdez le lien, révoquez-le et générez-en un autre.
La révocation est immédiate et totale. Le lecteur obtient le même 404 que pour un jeton inconnu ou mal formé — jamais un « ce lien a été révoqué », qui serait une réponse différente et exactement ce qu'un attaquant collecte pour énumérer.
La page du lecteur est un document autonome : aucun script, aucun formulaire, aucune zone de commentaire, aucun envoi de fichier. Il n'y a rien avec quoi interagir, ce qui est la forme la plus solide de « le public le plus large obtient la surface la plus réduite ».
Ce que le lien publie
Toute personne disposant de l'URL lit le système de design entier, et pas seulement ses jetons. Avant d'en envoyer un, sachez qu'il contient :
- vos principes et votre section logo, y compris les règles de zone de protection, de taille minimale et de mésusage ;
- votre voix — personnalité, pronom, tournures à privilégier, tournures à refuser — et la consigne de ton pour chaque moment ;
- chaque jeton de couleur avec sa valeur, sa règle d'usage et le jeton avec lequel il se marie ;
- l'échelle typographique, ainsi que les jetons d'espacement, de rayon, de point de rupture, de police et de durée ;
- vos règles d'imagerie et la bibliothèque d'icônes ;
- le guidage usage, when et dont de chacun de vos composants ;
- les valeurs que Sovrium a laissées hors de l'arbre de jetons, et tout ce que vous avez déclaré sans qu'il soit appliqué.
Il ne contient aucune valeur de variable d'environnement ni aucune donnée d'enregistrement : la projection lit design et theme, et rien d'autre — aucun chemin ne permet donc à un secret d'y parvenir. Mais une charte de marque est un document qui parle de votre produit, et un lien public vers ce document est une décision. Considérez qu'en générer un revient à publier.
La génération comme la révocation sont inscrites au journal d'audit — la génération avec la gravité warning, parce que c'est l'entrée qu'un exploitant recherche pour reconstituer le moment où quelque chose est devenu public. Aucune des deux entrées n'enregistre le jeton.
Pages associées
- Système de design — la clé
designque la console dessine. - Échelle typographique — l'échelle que rend la section Fondations.
- Tableau de bord d'administration — le reste de la console, et les points d'accès d'export.
- Surveillance de l'activité — où sont consignées une génération et une révocation.
- Durcissement de la sécurité — la posture 404-plutôt-que-403 que suit le lecteur de partage.
Dernière mise à jour 28 août 2026
Cette documentation a été rédigée avec de l'IA : des erreurs ou du contenu obsolète sont donc possibles. Sovrium est en bêta. Les contributions et corrections sont les bienvenues.