Application de gestion esports construite avec JavaFX en suivant l'architecture MVC.
esports-app/
├── pom.xml ← Config Maven + dépendances
└── src/main/
├── java/com/esports/
│ ├── MainApp.java ← 🚀 Point d'entrée JavaFX
│ │
│ ├── model/ ← 📦 MODÈLE (données)
│ │ ├── Player.java ← Entité Joueur (JavaFX Properties)
│ │ └── Team.java ← Entité Équipe
│ │
│ ├── view/ ← 🖼️ VUE (FXML = la vue)
│ │ └── (vos vues FXML supplémentaires)
│ │
│ ├── controller/ ← 🎮 CONTRÔLEUR (logique)
│ │ └── MainController.java ← Lien Vue ↔ Modèle
│ │
│ └── util/ ← 🛠️ Utilitaires
│ └── (helpers, converters, validators)
│
└── resources/
├── fxml/
│ └── MainView.fxml ← 🖥️ Interface principale
├── css/
│ └── esports-theme.css ← 🎨 Thème dark esports
└── images/
└── (logos, icônes)
- Java 17+
- Maven 3.8+
# Compiler
mvn clean compile
# Lancer
mvn javafx:run
# Package JAR
mvn clean package| Couche | Fichier | Rôle |
|---|---|---|
| Model | Player.java, Team.java |
Données + JavaFX Properties pour le binding |
| View | MainView.fxml + CSS |
Interface déclarative (aucune logique) |
| Controller | MainController.java |
Reçoit les events, met à jour le Model et la View |
Utilisateur → View (FXML) → Controller → Model → View (binding auto)
- Ajouter des vues FXML pour Équipes, Tournois, Stats
- Couche Service :
PlayerService.java,TeamService.java - Couche DAO : Connexion Base de données (MySQL/SQLite)
- Animations : Transitions entre les sections
- Authentification : Fenêtre de login
- Palette : Dark Navy
#0a0d14+ Cyan Neon#00e5ff+ Purple#a855f7 - Badges statut : 🟢 Online · 🔴 In-Game · ⚫ Offline