Aller au contenu principal
Fabled

Créateur de modules

Créez votre premier module Fabled

Installez le module CLI, créez un package valide et comprenez les fichiers qu'il crée.

Conditions préalables

  • Node.js 20.20 ou version ultérieure. Le référentiel Web Fabled lui-même nécessite actuellement ^20.20.0 ou >=22.22.0.
  • Un compte Fabled. La publication nécessite également un service de couplage Module CLI disponible et un espace de noms d'éditeur actif.
  • Bootstrap public : @fabledgg/module-cli est disponible auprès de npm sous la balise dist bootstrap tandis que la version 0.1.0 reste réservée à la version post-fusion.

Exécutez le bootstrap public

Essayez la CLI publique actuelle directement depuis npm sans l'installer globalement :

npx @fabledgg/module-cli@bootstrap module --help

Le reste de ce guide utilise la syntaxe du binaire installé fabled module. Si vous contribuez au référentiel Web Fabled lui-même, vous pouvez utiliser à la place npm run modules:cli -- module.

npx @fabledgg/module-cli@bootstrap module init my-dice \
  --publisher-id my-studio \
  --publisher-name \"My Studio\"

Choisissez un style d'installation

Le formulaire unique recommandé ne nécessite aucune installation globale :

npx @fabledgg/module-cli@bootstrap module --help

Pour un projet d'équipe, installez le bootstrap en tant que dépendance de développement afin que package-lock.json enregistre la version résolue et que la validation locale et CI utilise la même version de contrat.

npm install --save-dev @fabledgg/module-cli@bootstrap
npx fabled module --help

Une installation globale est facultative. Il expose le même binaire légendaire, mais une version épinglée locale du projet est plus facile à reproduire et à auditer.

npm install --global @fabledgg/module-cli@bootstrap
fabled module --help

Échafauder un projet

fabled module init my-dice \
  --publisher-id my-studio \
  --publisher-name "My Studio"

Le répertoire ne doit pas déjà exister. L'échafaudage crée l'exemple Dice & Chat avec un fabled.module.json canonique, une action de dés révisée, un cadre Dice Tray appartenant à l'hôte et un fichier de paramètres régionaux anglais. Modifiez le slug du module local avec --module-id et le nom d'affichage avec --name.

my-dice/
├── fabled.module.json
├── actions/roll.json
├── frames/dice-tray.json
└── locales/en.json

Effectuer la première vérification

fabled module validate my-dice
fabled module pack my-dice --output my-dice.zip
fabled module inspect my-dice.zip

Une validation propre prouve que le package correspond au contrat local v1. Il n'approuve, n'installe, n'active ou n'exécute pas le module.