Pierre MARTINandClaude Opus 5.5 602d0eafed Domaine « partie » en journal d'événements, branché au moteur WebAssembly
app/src/domain/game/ : une partie libre contre l'ordinateur, enregistrée
comme un arbre d'événements immuables et versionnés (GameStarted,
DiceRolled, MovePlayed, CubeOffered, CubeTaken, CubeDropped, GameEnded) ;
l'état se recalcule en les rejouant, annuler repart du parent, une action
après un retour ouvre une branche. Dés injectés. Le joueur saisit son coup
demi-coup par demi-coup ; l'ordinateur joue et décide du videau à 2 plis.
Toutes les règles viennent du moteur, derrière l'interface Engine que le
domaine définit.

app/src/engine/wasm-engine.ts : l'adaptateur Engine sur les commandes
d'engine-cli du moteur WebAssembly.

Tests : unitaires avec un faux moteur, et deux parties complètes jusqu'à
GameEnded sur le vrai moteur, avec des dés imposés.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-02 20:42:08 +01:00
2026-11-02 12:56:36 +01:00

Ustagammon

Ustagammon est une application mobile de backgammon, gratuite, libre (GPLv3) et entièrement hors ligne, qui apprend le jeu du premier lancer de dés jusqu'au niveau expert. Elle s'appuie sur le moteur GNU Backgammon.

Projet en cours : étape 0, prototype technique. La feuille de route est dans docs/feuille-de-route.md, le cadrage dans docs/cadrage.md.

Démarrer

Prérequis : git, make, docker (et adb pour le téléphone).

make setup   # une fois : prépare les outils
make help    # liste des commandes
make lint
make test

Licence

Code sous GPLv3 (LICENSE), contenus pédagogiques sous CC BY-SA 4.0. Crédits dans CREDITS.md.

S
Description
Ustagammon est une application mobile de backgammon, gratuite, libre (GPLv3) et entièrement hors ligne, qui apprend le jeu du premier lancer de dés jusqu'au niveau expert.
Readme GPL-3.0
1.7 MiB
Languages
C 55.6%
TypeScript 26.7%
JavaScript 6.4%
Shell 3.8%
Python 2.8%
Other 4.7%