Bienvenue sur la Documentation du KMP Starter Pack¶
Ce site regroupe l'ensemble des documentations techniques, des guides d'architecture et de la référence API du Starter Pack Kotlin Multiplatform (KMP).
🚀 Fonctionnalités Clés¶
- Multiplateforme Complet : Partage de code ciblant Android, iOS et Desktop (JVM).
- Architecture Guidée (Clean Architecture / DDD) : Séparation stricte de la logique métier (Domaine), de l'infrastructure (Données) et de l'interface (Présentation).
- Pile Technique Moderne : Kotlin 2.3.21, Gradle 9.5.0, AGP 9.0.0 et Java 25.
- Intégration Continue Conditionnelle : Un workflow CI/CD à double-vitesse (JVM Fast-Track de 10 secondes vs Deep-Testing complet avant merge sur
master). - Moteur de Documentation API : Génération automatisée de la documentation d'API via Dokka v2 et rendu via MkDocs Material.
🧱 Organisation Architecturales du Projet¶
Le module partagé :shared suit les directives fournies par le skill Architecte Kotlin :
- Couche Domaine (Domain) :
- Écrite en Kotlin pur (sans dépendance).
- Contient les UseCases autonomes modélisant les cas d'utilisation métier.
- Modèles de données robustes auto-validés (utilisation de
value classinline).
- Couche Données (Data) :
- Implémentation des dépôts et communication de bas niveau (réseau via Ktor, persistance).
- Gestion d'exceptions Flow transparente (garantissant que
AbortFlowExceptionn'est pas intercepté accidentellement).
- Couche Présentation (Presentation) :
- Interface réactive basée sur des
StateFlowimmuables. - Scopes coroutines proprement gérés et ViewModels autonomes.
- Interface réactive basée sur des
💻 Commandes Utiles¶
Exécuter la suite de tests (Fast-Track JVM)¶
./gradlew :shared:jvmTest
Lancer tous les tests (Toutes cibles)¶
./gradlew allTests
Générer localement la documentation de l'API (Dokka GFM)¶
./gradlew :shared:dokkaGfm
Compiler localement le site MkDocs¶
mkdocs build