← Back to Home

iRacing Endurance Manager

Full-stack endurance racing coordination platform with real-time telemetry and F1-inspired dashboards

React TypeScript Node.js Express PostgreSQL Redis WebSocket AWS iRacing SDK OAuth 2.0

Overview

iRacing Endurance Manager is a comprehensive web application I designed and built to help endurance racing teams coordinate multi-driver races in iRacing. The platform solves the complex logistics of 12-24 hour races where multiple drivers share a single car, handling everything from scheduling to real-time telemetry analysis.

The application features an F1-inspired telemetry dashboard with live track visualization, automatic fuel calculations, lap timing analysis, and team coordination tools. It's designed to become your team's digital pit wall, providing all the data and coordination tools needed to execute a successful endurance race strategy.

The Problem

Endurance racing teams in iRacing face significant coordination challenges during 12-24 hour races. Multiple drivers need to coordinate schedules across different time zones, track fuel consumption in real-time, analyze performance data, and manage pit strategy - all while racing. Existing tools were either too basic or required complex manual configuration.

Teams needed a unified platform that could handle driver scheduling, provide professional-grade telemetry during races, and work seamlessly without requiring extensive setup before each race.

My Solution

I architected and built a full-stack platform with three core systems:

F1-Inspired Dashboard

The real-time telemetry dashboard brings professional racing data visualization to iRacing endurance teams. Designed with an F1 pit wall aesthetic, it provides instant access to critical race data.

iRacing Endurance Manager - F1-inspired telemetry dashboard with live timing, fuel calculator, and track map

Key Features

Setup Management & Practice

The setup management system allows teams to store, share, and analyze car setups across all team members. Track performance data across practice sessions, compare setups, and identify what works best for each driver and track combination. The interface provides quick access to all setup files with searchable metadata and performance statistics.

iRacing Endurance Manager - Setup management interface showing car setup library and performance data

Technical Architecture

The frontend is built with React and TypeScript, featuring a meticulously crafted F1-style interface using the Oxanium font family. The design philosophy emphasizes high information density with maximum data visibility - all text is bold and uppercase, using high contrast bright green (#00ff00) on deep black (#0a0a0a) backgrounds with consistent 10px spacing throughout.

The backend uses Node.js/Express with PostgreSQL for structured data storage and Redis for real-time hot data caching. WebSocket connections via Socket.io provide live telemetry streaming at 60Hz with less than 100ms latency. The iRacing SDK captures real-time telemetry during races, while the iRacing API provides historical data, team rosters, and race results.

The infrastructure is deployed on AWS (US-East-2) using EC2 with Auto Scaling Groups and RDS for the database. This architecture is designed to handle hundreds of concurrent races with automatic scaling based on demand. OAuth 2.0 integration with iRacing provides seamless authentication without storing user passwords.

Design Philosophy

The entire application follows a comprehensive style guide inspired by professional F1 team telemetry displays. Every design decision prioritizes clarity and information density:

Technical Innovations

The zero-configuration architecture is a key innovation - the system automatically constructs race identifiers from iRacing's built-in SessionUniqueID and TeamID, eliminating manual setup. This was challenging because the iRacing SDK only provides detailed data for the player's car, requiring creative workarounds to provide comprehensive team data.

The real-time telemetry system processes 60Hz updates from the iRacing SDK, performs calculations for fuel consumption, lap predictions, and tire wear, then streams updates via WebSocket with sub-100ms latency. Redis caching ensures hot data is instantly available while PostgreSQL handles historical persistence.

The fuel calculator uses machine learning-inspired algorithms to predict consumption based on track conditions, driving style, and stint length, automatically calculating optimal pit windows and providing alerts when fuel strategy adjustments are needed.

Business Model

The application uses a freemium structure with team-based pricing:

The pricing model recognizes that endurance racing teams often have multiple drivers but want predictable costs. Volume discounts encourage racing organizations with multiple teams to adopt the platform across their entire organization.

iRacing Endurance Manager - Team management interface showing subscription tiers and team roster

Integration Ecosystem

The platform integrates with multiple services to provide a seamless experience:

Performance & Scale

The application is architected for scale from day one. AWS Auto Scaling Groups automatically provision additional EC2 instances during high-demand periods (like major endurance events). Redis caching reduces database load for frequently accessed data, and WebSocket connection pooling ensures efficient resource usage.

The frontend uses React performance optimizations including memoization, virtualization for large lists, and efficient SVG rendering for track maps. Chart.js or Recharts handles data visualization with hardware-accelerated rendering for smooth 60fps updates.

Current Status & Vision

The application is currently in active development, with core features implemented and tested with beta racing teams. The F1-inspired dashboard is fully functional, real-time telemetry streaming is operational, and team coordination features are being refined based on user feedback.

Future enhancements include AI-powered strategy recommendations, predictive pit stop timing, advanced competitor analysis, integration with team voice communication platforms, and mobile apps for iOS and Android to monitor races on the go.

Key Takeaways

Building iRacing Endurance Manager taught me valuable lessons about real-time data streaming, WebSocket architecture, and designing interfaces for high-pressure, data-intensive environments. Working with the iRacing SDK's constraints required creative problem-solving to provide comprehensive team data when only the player's car telemetry is available.

The project deepened my expertise in React performance optimization, real-time architectures, and payment integration with Stripe. Designing the F1-inspired interface taught me the importance of information hierarchy and the power of consistent design systems in creating professional-grade applications.