Inspiration
The idea for GR Insights grew out of the need for race engineers and drivers to have instant, data‑driven feedback during testing and competition. Traditional telemetry tools required manual data‑wrangling and often produced overwhelming raw signals that were hard to interpret in real time. By combining high‑performance visualizations with AI‑generated coaching, we wanted to give teams a single, intuitive dashboard that turns raw lap data into actionable insights—helping them shave seconds off lap times and improve driver technique faster than ever before.
What it does
Ingests raw lap data (CSV, JSON, or uploaded files) and stores it in a clean, normalized format. Visualizes telemetry with interactive Plotly charts, showing speed, throttle, brake, steering, and more, all synced to a timeline. Detects mistakes using a trained Scikit‑learn model that flags braking, throttle, and cornering errors. Generates AI coaching via a FastAPI endpoint that produces human‑readable suggestions without emojis, keeping the UI professional. Provides heatmaps of track usage and performance hotspots, enabling quick identification of weak sections. Offers a polished UI built with Next.js, Tailwind CSS, and Lucide icons, delivering a dark‑theme, glass‑morphism experience that feels premium and responsive. How we built it Frontend – A Next.js (v13) app using React, TypeScript, and Tailwind CSS for styling. Components were designed with a dark‑theme palette (#191818, #242324, #2C2C2B) and micro‑animations for a lively feel. Backend – FastAPI serves as the API layer, handling data upload, cleanup (via data_cleanup.py ) and AI insight generation ( ai_magic.py ). Data processing – Pandas cleans and aggregates lap data; Scikit‑learn models (trained on historic laps) predict mistake likelihood. Visualization – react‑plotly.js renders high‑performance charts; custom heatmap logic draws track‑usage overlays. CI/CD – Scripts automate linting, testing, and deployment. Iterative polishing – UI tweaks (logo update, button styling, emoji removal) were applied based on stakeholder feedback, ensuring a clean, professional look. Challenges we ran into Large binary data files (*.parquet) initially bloated the repository, requiring a cleanup strategy to keep the project lightweight. Realtime performance – Rendering thousands of telemetry points without lag demanded careful data throttling and memoization in React. Model integration – Aligning the Scikit‑learn model’s output with the UI’s expectations required extensive data‑shape transformations. Cross‑platform consistency – Ensuring the dashboard behaved identically on macOS, Linux, and Windows browsers required thorough testing of CSS and Plotly interactions. Balancing detail vs. clarity – Providing rich telemetry information while keeping the UI uncluttered required thoughtful layout and progressive disclosure techniques. Accomplishments that we're proud of Fully automated pipeline from raw lap upload to AI‑generated coaching in under a minute. Professional UI that meets modern design standards (dark mode, glass‑morphism, smooth micro‑animations). Clean repository after removing unnecessary large data files, keeping the repo size manageable. Accurate mistake detection with > 85 % precision on a held‑out test set. Comprehensive documentation (README, walkthrough, implementation plan) that makes onboarding new contributors trivial. What we learned Performance‑first UI design—optimizing data flow and using React.memo dramatically improves chart responsiveness. AI‑driven UX benefits from removing emojis and other noise; plain‑text suggestions are clearer for engineers. Effective collaboration—regular UI reviews and design sign‑offs kept the visual polish aligned with stakeholder expectations. Data hygiene matters—periodic cleanup of large intermediate files prevents repository bloat and speeds up CI pipelines. What's next for GR Insights Add multi‑session comparison so users can overlay laps from different days to see progress. Integrate video sync to link telemetry points with dash‑cam footage for richer## Inspiration The idea for GR Insights grew out of the need for race engineers and drivers to have instant, data‑driven feedback during testing and competition. Traditional telemetry tools required manual data‑wrangling and often produced overwhelming raw signals that were hard to interpret in real time. By combining high‑performance visualizations with AI‑generated coaching, we wanted to give teams a single, intuitive dashboard that turns raw lap data into actionable insights—helping them shave seconds off lap times and improve driver technique faster than ever before.
What it does
Ingests raw lap data (CSV, JSON, or uploaded files) and stores it in a clean, normalized format. Visualizes telemetry with interactive Plotly charts, showing speed, throttle, brake, steering, and more, all synced to a timeline. Detects mistakes using a trained Scikit‑learn model that flags braking, throttle, and cornering errors. Generates AI coaching via a FastAPI endpoint that produces human‑readable suggestions without emojis, keeping the UI professional. Provides heatmaps of track usage and performance hotspots, enabling quick identification of weak sections. Offers a polished UI built with Next.js, Tailwind CSS, and Lucide icons, delivering a dark‑theme, glass‑morphism experience that feels premium and responsive. How we built it Frontend – A Next.js (v13) app using React, TypeScript, and Tailwind CSS for styling. Components were designed with a dark‑theme palette (#191818, #242324, #2C2C2B) and micro‑animations for a lively feel. Backend – FastAPI serves as the API layer, handling data upload, cleanup (via data_cleanup.py ) and AI insight generation ( ai_magic.py ). Data processing – Pandas cleans and aggregates lap data; Scikit‑learn models (trained on historic laps) predict mistake likelihood. Visualization – react‑plotly.js renders high‑performance charts; custom heatmap logic draws track‑usage overlays. CI/CD – Scripts automate linting, testing, and deployment. Iterative polishing – UI tweaks (logo update, button styling, emoji removal) were applied based on stakeholder feedback, ensuring a clean, professional look. Challenges we ran into Large binary data files (*.parquet) initially bloated the repository, requiring a cleanup strategy to keep the project lightweight. Realtime performance – Rendering thousands of telemetry points without lag demanded careful data throttling and memoization in React. Model integration – Aligning the Scikit‑learn model’s output with the UI’s expectations required extensive data‑shape transformations. Cross‑platform consistency – Ensuring the dashboard behaved identically on macOS, Linux, and Windows browsers required thorough testing of CSS and Plotly interactions. Balancing detail vs. clarity – Providing rich telemetry information while keeping the UI uncluttered required thoughtful layout and progressive disclosure techniques. Accomplishments that we're proud of Fully automated pipeline from raw lap upload to AI‑generated coaching in under a minute. Professional UI that meets modern design standards (dark mode, glass‑morphism, smooth micro‑animations). Clean repository after removing unnecessary large data files, keeping the repo size manageable. Accurate mistake detection with > 85 % precision on a held‑out test set. Comprehensive documentation (README, walkthrough, implementation plan) that makes onboarding new contributors trivial.
What we learned
Performance‑first UI design—optimizing data flow and using React.memo dramatically improves chart responsiveness. AI‑driven UX benefits from removing emojis and other noise; plain‑text suggestions are clearer for engineers. Effective collaboration—regular UI reviews and design sign‑offs kept the visual polish aligned with stakeholder expectations. Data hygiene matters—periodic cleanup of large intermediate files prevents repository bloat and speeds up CI pipelines.
What's next for GR Insights
Add multi‑session comparison so users can overlay laps from different days to see progress. Integrate video sync to link telemetry points with dash‑cam footage for richer analysis. Expand AI models to cover fuel strategy, tire wear, and weather adaptation. Deploy a cloud‑hosted SaaS version with authentication, team management, and shared dashboards. Create a mobile companion app for on‑track quick glances at key metrics.
Built With
- data
- numpy
- pandas
- python
- scikit-learn
- streamlit
Log in or sign up for Devpost to join the conversation.