GoofyTrack est une application de gestion d'événements techniques permettant l'organisation de conférences avec des centaines de participants (similaire à Devoxx France). Cette plateforme offre une expérience utilisateur fluide pour les conférenciers, organisateurs et participants.
- Pour les conférenciers : Proposer, modifier et supprimer des talks
- Pour les organisateurs : Valider les talks, planifier les interventions et organiser le programme
- Pour le public : Consulter le planning, filtrer les contenus et gérer ses favoris
- Frontend : Next.js avec TypeScript
- Base de données : MariaDB
- Gestion d'état : (Zustand/Context API)
- Styles : Tailwind CSS
- Conteneurisation : Docker (MariaDB, Mailhog, phpMyAdmin)
- CI/CD : GitHub Actions pour lint, tests et build
- Qualité de code : ESLint, Prettier, Husky hooks
- Création d'un talk (titre, sujet, description, durée, niveau)
- Gestion des statuts (en attente, accepté, refusé, planifié)
- Attribution manuelle par les organisateurs
- Créneaux entre 9h et 19h
- 5 salles disponibles
- Prévention des chevauchements
- Vue publique filtrable (jour, salle, sujet)
- Authentification avec rôles (conférencier/organisateur)
- Permissions adaptées à chaque rôle
- Application responsive
- Vue privée (gestion, soumission)
- Vue publique (consultation du planning)
- Docker et Docker Compose
- Node.js (v18 ou supérieure)
- Yarn
-
Cloner le dépôt :
git clone [URL_du_dépôt] cd GoofyTrack
-
Configurer les variables d'environnement :
cp .env.dist .env # Modifier les valeurs dans .env selon vos besoins
-
Démarrer les services Docker :
docker-compose up -d
-
Installer les dépendances :
yarn install
-
Démarrer l'application :
yarn dev
- Application : http://localhost:3000
- phpMyAdmin : http://localhost:8080
- Mailhog : http://localhost:8025
//: # (- Branches de correction : hotfix/nom-correction
)s
Utilisation de commits conventionnels :
feat:
pour les nouvelles fonctionnalitésfix:
pour les corrections de bugsdocs:
pour les mises à jour de documentationchore:
pour les tâches de maintenancestyle:
pour les changements de formatagerefactor:
pour les refactorisations de codetest:
pour l'ajout ou la modification de tests
Le projet utilise GitHub Actions pour l'automatisation :
- Lint du code à chaque PR
- Exécution des tests
- Build de l'application
Le projet est déployé automatiquement via Vercel :
- Déploiement de prévisualisation à chaque PR
- Déploiement automatique sur la branche
develop
pour l'environnement de staging - Déploiement en production lors des merges sur la branche
main
- Rollback facile en cas de problème
- Organisation Agile allégée avec daily meetings
- Utilisation de GitHub Projects avec issues liées aux PR
- Labels pour catégoriser les tâches (frontend, backend, feature, bug)
- Estimation en story points (1-13)
- Priorisation des tâches
- Système de favoris
- Génération automatique de planning
- Filtres avancés (niveau, conférencier)
- Statistiques (répartition, taux d'occupation)
- Feedback utilisateur post-talk
- Thèmes clair/sombre
- Notifications par email
- API auto-documentée (Swagger)
- Documentation technique dans
/docs
- Maquettes Figma (à venir)