application - v0.1.0
    Preparing search index...

    application - v0.1.0

    Documentation Technique - Application Client JO Front

    Cette application Next.js constitue le frontend client pour le système de billetterie des Jeux Olympiques. Elle permet aux utilisateurs de consulter les événements sportifs, sélectionner des offres de billets et effectuer leurs achats en ligne.

    • Framework : Next.js 14 avec App Router
    • Langage : TypeScript
    • Styling : Tailwind CSS + DaisyUI
    • État Global : Redux Toolkit
    • Tests : Jest + React Testing Library
    • Documentation : TypeDoc
    • Qualité de Code : ESLint
    src/
    ├── app/ # Pages et routes (App Router)
    ├── components/ # Composants React réutilisables
    │ ├── common/ # Composants génériques
    │ ├── connexion/ # Authentification
    │ ├── evenements/ # Gestion des événements
    │ └── header/ # Navigation
    ├── context/ # Contextes React
    ├── hook/ # Hooks personnalisés
    ├── lib/ # Services et utilitaires
    │ ├── api/ # Services API
    │ └── type/ # Types TypeScript
    ├── store/ # Configuration Redux
    ├── style/ # Styles globaux
    └── utils/ # Fonctions utilitaires
    • Connexion et inscription des utilisateurs
    • Gestion des sessions avec tokens JWT
    • Modal d'expiration de session
    • Authentification persistante
    • Consultation des épreuves olympiques
    • Filtrage par discipline et lieu
    • Carousel d'affichage des épreuves
    • Détails complets des événements
    • Sélection d'offres de billets
    • Gestion du panier avec Redux
    • Validation des stocks en temps réel
    • Interface responsive pour tous les appareils
    • Ajout/suppression d'offres au panier
    • Calcul automatique des totaux
    • Intégration sécurisée des paiements
    • Génération de QR codes pour les billets

    L'application communique avec plusieurs services backend :

    • DisciplineService : Gestion des disciplines sportives
    • EpreuveService : Récupération des épreuves
    • EvenementService : Détails des événements
    • LieuService : Informations sur les lieux
    • OffreService : Gestion des offres de billets
    • PaiementService : Traitement des paiements
    • TicketService : Gestion des billets
    • QrCodeService : Génération des codes QR

    L'application est entièrement responsive avec :

    • Mobile First : Optimisée pour les appareils mobiles
    • Breakpoints Adaptatifs : Utilisation des breakpoints Tailwind
    • Composants Conditionnels : Headers et layouts spécifiques mobile/desktop
    • Hook useIsMobile : Détection automatique du type d'appareil
    • useIsMobile : Détection responsive des écrans
    • useAuth : Gestion de l'authentification
    • useCart : Interface avec le store Redux du panier

    L'application utilise un design system cohérent basé sur :

    • DaisyUI : Composants UI prêts à l'emploi
    • Tailwind CSS : Classes utilitaires pour le styling
    • Couleurs Olympiques : Palette de couleurs thématique
    • Typographie : Hiérarchie claire et lisible
    • Panier : Articles sélectionnés et quantités
    • Authentification : Tokens et informations utilisateur
    • UI : États de chargement et notifications
    • Formulaires : Validation et soumission
    • Modals : Ouverture/fermeture des dialogues
    • Filtres : Critères de recherche des événements
    • Spinner : Indicateurs de chargement
    • Notification : Messages utilisateur
    • Modal : Dialogues et overlays
    • CardEpreuve : Affichage des épreuves
    • CardOffre : Sélection des offres
    • CarousselEpreuve : Navigation des événements
    • QrCodeModal : Affichage des billets
    • Validation côté client : Contrôles de saisie
    • Tokens JWT : Authentification sécurisée
    • HTTPS : Communications chiffrées
    • Sanitisation : Protection XSS
    • Code Splitting : Chargement optimisé des modules
    • Image Optimization : Next.js Image component
    • Lazy Loading : Chargement à la demande
    • Bundle Analysis : Optimisation de la taille
    • Tests Unitaires : Jest + React Testing Library
    • Tests de Composants : Rendu et interactions
    • Tests d'Intégration : Services API

    Cette documentation est générée automatiquement à partir du code source. Chaque module, composant et service est documenté avec :

    • Description détaillée : Rôle et responsabilités
    • Props/Paramètres : Types et utilisation
    • Exemples d'usage : Cas d'utilisation courants
    • Notes techniques : Détails d'implémentation

    Naviguez dans les sections pour explorer l'architecture et comprendre le fonctionnement de chaque partie du système.


    Cette documentation est maintenue automatiquement. Pour toute question technique, consultez les commentaires dans le code source.