# Project CARS UDP Telemetry Viewer Simple TypeScript/Node app that listens for Project CARS UDP telemetry on port `5606` and displays the latest packet data in a browser table UI. ## Run ```powershell npm install npm run dev ``` Open `http://localhost:3000`. In Project CARS, enable UDP telemetry/streaming and point it at this computer. The app binds UDP on `0.0.0.0:5606`. ## Scripts - `npm run dev` starts the TypeScript server directly with `tsx`. - `npm run build` compiles TypeScript into `dist/`. - `npm start` runs the compiled server. ## Notes The parser covers the packet types from the supplied header: car physics, race definition, participants, timings, game state, time stats, and participant vehicle/class names. The frontend focuses on the most useful live values, while the server keeps the full parsed payload available through `/api/state`. ## Recording and Replay Stop the Node app before capturing because only one process can bind UDP `5606`. ```powershell python scripts\capture_udp.py --mode auto ``` This creates a replayable session folder like `captures/session_20260514_160000` containing raw packet files and `manifest.jsonl`. Replay into the Node app: ```powershell npm.cmd run dev python scripts\replay_udp.py captures\session_20260514_160000 ``` Useful replay options: ```powershell python scripts\replay_udp.py captures\session_20260514_160000 --speed 4 python scripts\replay_udp.py captures\session_20260514_160000 --loop python scripts\replay_udp.py captures\session_20260514_160000 --types 1,2,3,4,7,8 ```