Skip to main content
Voir en Markdown

Commandes de projet

Cinq commandes agissent sur un projet plutôt que sur un serveur en cours : en échafauder un, le construire en fichiers statiques, afficher son schéma, vérifier une configuration avant de la livrer, et écrire les types d'une configuration TypeScript.

sovrium init

Échafaude un nouveau projet dans le répertoire indiqué, ou dans le répertoire courant si aucun n'est passé. Chaque échafaudage écrit un app.yaml, un CLAUDE.md rédigé pour le domaine du modèle, et un répertoire public/ pour les ressources statiques.

>_ terminal
sovrium init ./my-app                          # démarrage vierge
sovrium init ./my-app --template crm --name acme-crm
sovrium init ./my-app --template sovrium/crm-template#v2
Option Effet
--template <name> Nom d'un modèle intégré, ou un dépôt GitHub — voir ci-dessous.
--name <name> Nom d'application écrit dans l'app.yaml généré. Par défaut, le nom du répertoire.
--force Autorise l'écrasement d'un app.yaml existant.
--typescript Échafaude un app.ts typé au lieu d'app.yaml. Refuse --template.

Modèles intégrés : hello-world, landing-page, crm, api-only, intranet, mcp-server, blog, docs-site, projects, helpdesk, content-calendar, people, events, assets, expenses, company-os, automation-recipes, knowledge-base. Un nom inconnu sort en 1 et affiche la liste.

--template accepte aussi un dépôt GitHub sous les formes owner/repo, gh:owner/repo ou https://github.com/owner/repo, chacune avec un #ref optionnel nommant une branche, une étiquette ou un SHA. Seul github.com est pris en charge.

--typescript écrit un app.ts au lieu d'un app.yaml, accompagné du sovrium.d.ts et du tsconfig.json qui le rendent vérifiable. L'option refuse de se combiner à --template : un modèle livre son propre app.yaml, et Sovrium résout app.yaml avant app.ts, si bien que la configuration générée serait masquée pour de bon. Échafaudez d'abord le modèle, puis convertissez sa configuration à la main.

sovrium build

Génère un site statique — HTML, CSS et ressources — à partir de votre configuration, prêt pour n'importe quel hébergeur statique.

>_ terminal
sovrium build app.yaml

SOVRIUM_DEPLOYMENT=github-pages sovrium build app.yaml

SOVRIUM_OUTPUT_DIR=./public \
  SOVRIUM_BASE_URL=https://example.com \
  SOVRIUM_GENERATE_SITEMAP=true \
  SOVRIUM_GENERATE_ROBOTS=true \
  sovrium build app.yaml

Les options de build proviennent de variables d'environnement SOVRIUM_*, pas d'options de ligne de commande — voir Variables d'environnement pour l'ensemble complet. La sortie va dans SOVRIUM_OUTPUT_DIR lorsqu'elle est définie ; sinon dans un répertoire dist/ à côté du fichier de configuration.

sovrium schema

Affiche le JSON Schema (Draft 2020-12) de la configuration d'application sur la sortie standard, ou l'écrit dans un fichier.

>_ terminal
sovrium schema
sovrium schema --output app.schema.json

Le document est autonome, avec une déclaration $schema de premier niveau : tout éditeur ou validateur compatible JSON Schema le consomme tel quel. Voir Schéma JSON pour le brancher à un éditeur.

sovrium validate

Décode un fichier de configuration face à AppSchema et signale ce qui ne va pas. Accepte .json, .yaml, .yml et .ts, en résolvant d'abord les inclusions $ref.

>_ terminal
sovrium validate app.yaml
sovrium validate app.ts

Affiche Valid configuration: <name> et sort en 0, ou un arbre d'erreurs et sort en 1. Exécutez-la en CI avant un déploiement — c'est le schéma que le serveur décode au démarrage. Comportement détaillé sur Valider une configuration.

sovrium types

Écrit la surface de rédaction TypeScript dans un répertoire, afin qu'une configuration puisse s'écrire en app.ts sans package.json, sans node_modules et sans étape d'installation.

>_ terminal
sovrium types
sovrium types --output ./config

Deux fichiers apparaissent. sovrium.d.ts déclare le module sovrium et il est réécrit à chaque exécution, car il décrit le schéma du binaire qui l'a produit. tsconfig.json fait entrer cette déclaration dans le programme TypeScript et n'est écrit que s'il manque : dès qu'un projet en possède un, il vous appartient, et le remplacer ne serait pas un effet de bord acceptable pour une simple demande de types. Quand il existe déjà, la commande le signale et rappelle la seule chose qui doit rester vraie. sovrium.d.ts doit demeurer dans le programme TypeScript.

Relancez-la après une mise à jour du binaire. Voir Configurations TypeScript pour le modèle de rédaction.

Pages associées

Dernière mise à jour 1 septembre 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.

Construit avec Sovrium