# 🀄 Tutoriel interactif de Mahjong 🀄
Un tutoriel complet et interactif pour apprendre à jouer au mahjong, développé en TypeScript. Ce projet vise à rendre l'apprentissage du mahjong accessible à tous.



## 🔗 Démonstration

Ce tutoriel est accessible directement sur [ce site](https://perso.eleves.ens-rennes.fr/people/adrien.decosse/riichi/).



## ✨ Fonctionnalités

- Guide étape par étape: Apprentissage progressif découpé en chapitre
- Interface interactive: Manipulez les tuiles et expérimenter les dynamiques
- Exemples de jeu: Scénarios dirigés pour s'entrainer aux différentes situations
- Non compatible pour le format téléphone ou tablette



## 🛠️ Configuration Typescript

- Cible ES2015
- Mode strict activé
- Module de type "esnext"



## 🛠️ Prérequis

- ts-loader ^9.5.2
- webpack ^5.98.0
- webpack-cli ^6.0.1



## 🚀 Installation

- Clonage du dépot: ```git clone https://github.com/Didictateur/Riichi.git && cd Riichi```
- Installation des dépendances: ```npm install```
- Compilation: ```make```



## Ⓜ️ Makefile

Un makefile est à disposition pour exécuter plusieurs commandes:

- `make` compile le projet dans `build/` en mode `production`
- `make dev` compile le projet dans `build/` en mode `development`
- `make zip` compresse le contenu du `build` et les ressource nécessaires dans `riichi.zip`
- `make clean` supprime `riichi.zip` et le contenu de `build/`
- `make hard-clean` en plus de clean, supprime toutes les dépendances installées



## 📁 Structure du projet

```
Riichi/ 
├── src/ 
│   ├── img/         				# Dossier contenant les images
│   ├── display/    	  			# Composant gérant l'affichage de chaque section 
│   ├── text/          	 			# Textes des tutoriels
│   ├── yakus/                		# Implémentation des yakus
│   └── [autres fichiers sources]
├── img/             				# Images et ressources 
├── tests/                         	# Tests unitaires et d'intégration
├── build/                         	# Ensemble du projet compilé en JavaScript
└── [autres fichiers de configuration]
```



## 🤝 Source

Les images ont été récupérées depuis le github de [FluffyStuff](https://github.com/FluffyStuff/riichi-mahjong-tiles?tab=readme-ov-file).



## 📝 Licence

Tout le projet est dans le [domaine public](https://creativecommons.org/publicdomain/zero/1.0/).
