Inspiration

As a gamer, I've always understood the value of data for improvement - analyzing replays, studying win rates, optimizing builds. When I saw this dataset, I had an "aha" moment: racing is ultimately a competitive game, and the telemetry data is the replay system. I wanted to build a tool that transforms those millions of sensor readings into the same kind of actionable feedback that helps gamers level up - but for drivers chasing tenths of a second on track.

What it does

LapIQ is a professional-grade telemetry analysis platform that runs entirely in your browser. You can:

  • Explore race data from 17 vehicles across an endurance race at Barber Motorsports Park
  • Analyze any lap with an interactive track map showing the exact racing line, synchronized with real-time speed and throttle graphs
  • Compare laps side-by-side against reference laps from faster drivers, with color-coded sector timing differences
  • Get AI coaching that analyzes telemetry differences and provides specific, actionable recommendations like "brake 15 meters later into Turn 4 to gain 0.3 seconds"

It's like having a racing engineer's analysis suite at your fingertips - transforming raw data into insights that help drivers find those crucial tenths.

How we built it

Frontend: React, TypeScript, Tailwind CSS, and Vite for a modern, responsive web app. Leaflet handles the interactive track map rendering with OpenStreetMap data.

Data Processing: Python with Pandas for ETL pipeline - I converted and sampled the massive 11+ million row telemetry dataset into optimized Apache Parquet files using Parquet. With hyperparquet, this lets the browser handle gigabytes of data efficiently with columnar storage.

AI Analysis: Gemini LLM powers the lap comparison feature, analyzing telemetry differences to generate sector-specific coaching recommendations with time gain estimates and difficulty ratings.

Performance: In-memory caching, typed arrays for numeric computations, and careful state management keep everything synchronized across multiple interactive visualizations despite processing thousands of data points per lap.

Challenges we ran into

Dataset size was tricky. 11.5 million telemetry rows per session meant I couldn't just throw it at the browser. I had to learn Parquet format, build a Python ETL pipeline, and strategically sample the data while preserving accuracy - balancing detail vs. performance.

Racing line visualization took multiple attempts. Getting GPS coordinates to render accurately on the track map, syncing them with telemetry timestamps, and making the car smoothly follow the racing line required several iterations to get right.

Data wrangling complexity. Aligning different data sources (lap times, sector splits, telemetry streams) with varying sample rates and timestamps was tricky.

Accomplishments that we're proud of

The racing line visualization. Watching the car move around the track in perfect sync with the telemetry graphs, with sector boundaries marked and "follow mode" camera trackingβ€”it just works and looks professional.

The overall look and feel. It feels like real race engineering software, not a hackathon prototype.

Solving the data problem. Going from "this is too much data" to "this loads instantly in a browser" was a satisfying technical victory using Parquet optimization.

What we learned

This was a fun dive into data engineering - I'd done some Python/Pandas before but not in recent memory. DuckDB, Parquet columnar storage, and building ETL pipelines is always fun.

I used Claude Code for the entire project, which was a new workflow for me. Having an AI pair programmer handle the heavy lifting while I focused on architecture and problem-solving dramatically accelerated development.

Racing insights: While I've played racing sims and know about apex lines and braking points, seeing real telemetry data made those concepts click differently. Understanding how millisecond-level throttle modulation affects lap times is fascinating.

What's next for LapIQ: AI Powered Racing Analysis

User lap uploads: Let drivers upload their own telemetry data (from track day data loggers) and instantly compare against pro reference laps.

Real-time coaching mode: Stream live telemetry during practice sessions and provide immediate feedback - "you just lost 0.2s in Sector 2" as it happens.

Expanded datasets: Support more tracks, more racing series, and historical race archives for deeper comparative analysis.

Advanced AI features: Predictive modeling for tire degradation, fuel strategy optimization, and race-pace forecasting based on historical patterns.

Built With

Share this project:

Updates