Contexte
Création d'une plateforme complète de speedcubing interactive en 3D dans le navigateur. Le projet combine un simulateur physique multi-cubes, un chronomètre WCA de compétition conforme aux standards csTimer, et des modules d'apprentissage visuels couvrant les méthodes débutantes et expertes.
Fonctionnalités Clés
- Simulateurs Multi-cubes (2x2, 3x3 & 4x4) : Mouvements simples et larges avec contrôles clavier/tactiles, gestion des centres et des cas de parité en 4x4.
- Chronomètre WCA (Mode csTimer) : Prise en main conforme csTimer (maintien espace/tactile), calculs officiels des moyennes élaguées (ao5, ao12, mo3), aperçu 2D du patron de mélange et export JSON compatible csTimer.
- Guides d'Algorithmes & Démo 3D : Répertoires interactifs (Simple 2x2/3x3/4x4, Ortega, CFOP avec 119 cas, Yau, Blindfolded Speffz) dotés d'un lecteur 3D pas-à-pas et du test direct sur le cube.
- Internationalisation Bilingue (FR / EN) : Expérience entièrement traduite avec bascule dynamique sans rechargement.
Défis Techniques
- Mathématiques 3D et Vecteurs d'Orientation : Vérification d'état et détection de résolution par projection de vecteurs directionnels afin d'éviter le verrouillage cardan (gimbal lock).
- Optimisation Bundle & Code-Splitting : Isolation des dépendances lourdes (Three.js) dans des chunks distincts et chargement différé (React.lazy + Suspense) réduisant drastiquement le bundle initial.
- Architecture Modulaire : Découplage strict de la logique d'animation et de l'état du puzzle via Zustand, intégré dans une charte graphique épurée avec Tailwind CSS.

