events_frontend est une application Flutter permettant la gestion d’événements avec authentification via JWT. Elle distingue les utilisateurs selon leurs rôles (utilisateur ou organisateur) et offre des fonctionnalités adaptées à chacun.
- 🔐 Connexion via JWT
- 📝 Enregistrement avec choix du rôle (
ROLE_USER
ouROLE_ORGANIZER
) - 📦 Sauvegarde du token avec
SharedPreferences
- 🚪 Déconnexion propre
- 👁️ Voir la liste de tous les événements
- 🔍 Voir les détails d’un événement
- 🟢 Label : "✅ Publié" ou "⏳ Non publié"
- 📤 Bouton Publier (uniquement visible pour les organisateurs)
- ➕ Bouton Créer un événement (organisateurs uniquement)
- 🗑️ Supprimer un événement (organisateurs uniquement)
- Flutter SDK
- Un IDE comme Android Studio, IntelliJ ou VS Code
- Le Backend Symfony
- Le backend Symfony est un REST sécurisé avec JWT exposant :
POST /api/login
POST /api/register
GET /api/events
POST /api/events
POST /api/events/{id}/publish
DELETE /api/events/{id}
- s'assurer d'avoir docker et docker-compose installés
# 1. Cloner et lancer le backend (plus d'infos sur le readme du backend)
git clone https://github.com/marius-kengne/events_backend.git
cd events_backend
docker-compose up --build -d
# 2. Cloner le frontend
git clone https://github.com/marius-kengne/events_frontend.git
cd events_frontend
# 3. Installer les dépendances dans le frontend
flutter pub get
# 4. Lancer l'application le frontend
flutter run
Remarque : Pour exécuter pour le web, assurez-vous d’exécuter :
flutter run -d chrome
Par défaut, l’URL du backend est :
static const String baseUrl = 'http://localhost:8000/api';
Pour modifier cette URL, ouvrez :
lib/services/api_service.dart
et changez la valeur debaseUrl
.
lib/
├── models/ # Modèles de données (Event)
├── providers/ # Provider pour l'état d'authentification
├── screens/ # Interfaces : login, register, events, détails
├── services/ # Classe ApiService pour les requêtes HTTP
└── main.dart # Entrée principale
Tu veux contribuer ? Voici comment faire :
# Crée une branche de travail
git checkout -b feature/ma-fonctionnalite
# Commit tes modifications
git commit -m "Ajoute nouvelle fonctionnalité"
# Pousse ta branche
git push origin feature/ma-fonctionnalite
Puis ouvre une Pull Request 🚀
Distribué sous la licence MIT.