Chronométrage de Précision
pour Chaque Course
Chronométrage de Précision
pour Chaque Course
RaceGorilla propose une plateforme de chronométrage sportif en libre-service. Lorsque la pandémie de COVID a mis le marché des événements sportifs à l'arrêt, l'équipe a saisi l'opportunité de repenser son infrastructure technologique.
Le chronométrage sportif est un domaine où la précision est critique et où chaque milliseconde compte. RaceGorilla devait reconstruire son application mobile existante dans un framework moderne permettant de faire plus avec une équipe réduite. L'application devait fournir des services de chronométrage synchronisé via plusieurs appareils mobiles, intégrant des fonctionnalités avancées comme la connectivité Bluetooth, les mises à jour en direct et un support hors ligne robuste.
Construire une application de chronométrage sportif haute performance exige une précision inférieure à la seconde, une connectivité fiable en environnements extérieurs et des capacités hors ligne infaillibles pour les événements avec des connexions de données instables.
Nous avons livré une refonte complète du stack — de l'application mobile Flutter aux extensions du backend PHP/Laravel et de l'application web Angular. Ce qui a commencé comme une migration s'est transformé en un partenariat technique approfondi. En utilisant notre méthodologie en six étapes, nous avons navigué la complexité du chronométrage en temps réel à grande échelle.
1. IDENTIFIER & VALIDER
Nous avons analysé l'application existante de RaceGorilla pour comprendre les exigences critiques de performance. Résultats clés : la précision du chronométrage doit être maintenue sur plusieurs appareils simultanément, l'application doit fonctionner de manière fiable sans connectivité internet sur les sites de course isolés, et la vitesse de scan doit égaler ou dépasser celle de l'application existante.
1. IDENTIFIER & VALIDER
Nous avons analysé l'application existante de RaceGorilla pour comprendre les exigences critiques de performance. Résultats clés : la précision du chronométrage doit être maintenue sur plusieurs appareils simultanément, l'application doit fonctionner de manière fiable sans connectivité internet sur les sites de course isolés, et la vitesse de scan doit égaler ou dépasser celle de l'application existante.
2. CARTOGRAPHIE D'IMPACT
Nous avons cartographié les fonctionnalités par rapport à la valeur business principale : la satisfaction des organisateurs d'événements. La connectivité Bluetooth permet l'intégration de chronomètres matériels. Le MQTT fournit des mises à jour en direct aux spectateurs. L'architecture offline-first garantit le bon déroulement des événements quelle que soit la connectivité. Chaque fonctionnalité soutient directement le positionnement « libre-service ».
3. AUDIT TECHNIQUE
Nous avons audité l'architecture de l'application existante, les benchmarks de performance et les points d'intégration. L'audit a confirmé Flutter comme le bon choix pour atteindre des performances Bluetooth de niveau natif tout en réduisant la taille d'équipe nécessaire à la maintenance iOS et Android. Nous avons également identifié des opportunités de modernisation du backend PHP/Laravel.
4. PROTOTYPAGE INTERACTIF
Des prototypes de performance ont été testés lors d'événements sportifs réels pour valider la vitesse de scan Bluetooth, la précision de la synchronisation multi-appareils et la fiabilité de la file d'attente hors ligne. Les prototypes ont démontré que Flutter pouvait égaler les performances de scan de l'application existante — un critère décisif.
5. DÉVELOPPEMENT & LANCEMENT
Nous avons développé une application Flutter haute performance intégrant la connectivité Bluetooth pour les chronomètres matériels, le MQTT pour les mises à jour en direct des courses, et une base de données locale avec système de file d'attente pour le stockage et la synchronisation des données hors ligne. L'application gère les connexions instables avec élégance, garantissant que les événements se déroulent toujours sans accroc.
6. ITÉRER & OPTIMISER
Notre collaboration a évolué en un véritable partenariat technique. Au-delà de l'application mobile, nous avons étendu le backend PHP/Laravel avec de nouveaux endpoints API et amélioré le frontend web Angular. Les données événementielles et les analyses de chronométrage alimentent les optimisations de performance en continu.
La reconstruction de RaceGorilla démontre comment une migration de plateforme peut devenir un catalyseur d'amélioration technique globale. En passant à Flutter, l'équipe peut désormais faire plus avec moins de ressources tout en offrant une précision de chronométrage équivalente à celle de leur application existante. RaceGorilla a depuis entièrement décommissionné l'ancienne application Competition, tous les utilisateurs ayant migré vers l'application RaceGorilla Pro développée en Flutter.
Full-Stack Sports Timing Platform
Conçue pour le Jour de Course
Chaque fonctionnalité a été conçue pour les conditions exigeantes des événements sportifs en direct — environnements extérieurs, connectivité instable et exigences de précision à la milliseconde.
La connexion Bluetooth directe aux dispositifs de chronométrage matériels permet un chronométrage précis et synchronisé sur plusieurs appareils mobiles à différents points de contrôle de la course.
Les résultats de course en temps réel sont envoyés aux spectateurs et organisateurs via MQTT, offrant des classements en direct et des temps intermédiaires pendant les événements.
Une base de données locale et un système de file d'attente garantissent que toutes les données de chronométrage sont capturées même sans connectivité internet. Les données se synchronisent automatiquement lorsque la connexion est rétablie.
Plusieurs appareils peuvent fonctionner simultanément à différents points de contrôle, avec un chronométrage synchronisé garantissant des temps intermédiaires et des résultats d'arrivée précis.
Plateforme de chronométrage sportif full-stack connectant les appareils mobiles à l'infrastructure cloud
L'application mobile Flutter se connecte aux chronomètres matériels via Bluetooth, publie des mises à jour en direct via MQTT et se synchronise avec un backend PHP/Laravel. Une application web Angular fournit la gestion des événements et l'affichage des résultats pour les organisateurs et les spectateurs.
CAPTURE DU CHRONOMÉTRAGE
Les appareils mobiles se connectent aux chronomètres Bluetooth et capturent les données de chronométrage avec sauvegarde en file d'attente hors ligne.
SYNCHRONISATION EN DIRECT
Le protocole MQTT délivre les mises à jour de course en temps réel tandis que la file d'attente locale gère les interruptions de connectivité.
GESTION DES ÉVÉNEMENTS
Le backend PHP/Laravel et le frontend Angular fournissent une configuration complète des événements, les résultats et les analyses.
Une application Flutter haute performance qui fournit des services de chronométrage synchronisé avec une intégration Bluetooth de niveau natif.
L'expérience approfondie d'Unlock'd dans les technologies Bluetooth et de scan a été cruciale pour atteindre en Flutter des vitesses de scan équivalentes à celles de l'application existante. L'application intègre des fonctionnalités avancées dont la connectivité Bluetooth, le MQTT pour les mises à jour en direct, et une base de données locale avec file d'attente pour le stockage et la synchronisation des données hors ligne. L'ancienne application Competition a été entièrement décommissionnée au profit de l'application RaceGorilla Pro, disponible sur l'App Store et le Google Play Store.
