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.
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.
init n'écrase jamais ce qui ne lui appartient pas. Les fichiers .gitignore, .env.example et public/ existants sont laissés tels quels. app.yaml est le seul fichier qu'init possède, et même celui-là n'est écrasé qu'avec --force.
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.
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.yamlLes 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.
sovrium schema
sovrium schema --output app.schema.jsonLe 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.
sovrium validate app.yaml
sovrium validate app.tsAffiche 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.
sovrium types
sovrium types --output ./configDeux 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
- Aperçu du CLI — résolution de configuration et surface complète des commandes.
- Commandes de cycle de vie —
start,stop,restart,reload. - Modèles et exemples — le contenu de chaque modèle intégré.
- Configurations TypeScript — rédiger
app.tssans npm. - Valider une configuration — lire les erreurs affichées par
validate.
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.