Files
games/docs/rules/FILE_CONTRACTS.md

35 lines
2.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!-- file: docs/rules/FILE_CONTRACTS.md -->
<!-- version: 5 -->
# Contrats des fichiers principaux
- `README.md` présente le dépôt et ses entrées principales.
- `RULES.md` indexe les règles normatives.
- `ROADMAP.md` suit les objectifs futurs et leur état.
- `CHANGELOG.md` conserve l'historique synthétique inversement chronologique.
- `docs/000-README.md` indexe la documentation détaillée.
- `docs/rules/` contient les règles durables.
- `docs/architecture/` contient les décisions et descriptions d'architecture.
- `docs/objectives/` décrit les objectifs et la stratégie produit/technique.
- `docs/games/` classe les familles de jeux, leurs contrôles et leurs évolutions.
- `docs/engine/` décrit lévolution fonctionnelle des générations de moteur.
- `docs/monetization/` décrit les modèles de monétisation indépendamment des fournisseurs.
- `docs/services/` décrit leaderboards, backend, partage, anti-cheat et services communautaires.
- `docs/development/` décrit les workflows de développement non normatifs complémentaires aux règles.
- `docs/testing/` décrit larchitecture des tests, leur placement et les stratégies de sélection.
- `crates/common/` contient les bibliothèques transverses indépendantes dune génération spécifique du moteur, notamment le socle de logging.
- `deltas/` contient un document par livraison ou correctif versionné.
- `prompts/` peut contenir les prompts de reprise de session lorsqu'ils deviennent utiles.
- `scripts/` contient des audits en lecture seule et des outils du dépôt.
- `assets/` contient les ressources runtime communes et spécifiques aux jeux ; aucune ressource runtime n'est placée dans une crate Rust.
- `Android/` contient le projet Gradle multi-module et son code Java commun/spécifique.
- `crates/apps/` contient les exécutables de développement et launchers Rust, notamment les runners Desktop par jeu.
## Tauri
- `crates/apps/<game>-tauri/frontend/` contient le frontend Vite/TypeScript versionné.
- `crates/apps/<game>-tauri/src/lib.rs` est la façade Rust de l'app Tauri.
- `crates/apps/<game>-tauri/src/tauri.rs` assemble Tauri et porte le pont Web/Rust.
- `crates/apps/<game>-wasm/` contient l'adaptation WebAssembly distincte.
- Les bindings JavaScript et modules `.wasm` générés restent ignorés par Git.