The Rascals - Luddy Hacks 2026

Inspiration

Inspired by the Little 500 Race and the Leaderboard case for the hackathon.

What it does

It loads real 2025 finisher / team data from a spreadsheet, then simulates how far each team had ridden at any moment in the race. You can move through time and switch heats; the dynamic leaderboard updates so miles stay consistent with the clock. There’s also stats, an activity log of submissions, and admin tools to add/remove rows or reset from the sheet.

How we built it

Frontend: React + Vite (dev server on port 5173, with API requests proxied to the backend). Backend: Node.js + Express (port 3001) with better-sqlite3 for persistence—active leaderboard rows, append-only submission history, and stored race clock + heat. Race math is shared in spirit between server and client: progress from elapsed time drives simulated miles per team. npm run dev from the repo root runs API and web together.

Challenges we ran into

Keeping UI and server state aligned, ran into concurrency problems. Also brainstorming ideas for how we can creatively apply the leaderboard problem.

Accomplishments that we're proud of

Coherent app that is able to simulate races and display stats dynamically as the race progresses.

What we learned

How Express and SQLite can work together to keep the app simple, better-sqlite works on a single database server.

What's next for Little 500 Leaderboard Simulation

Could add import from Microsoft Excel to simulate any types of races.

Built With

Share this project:

Updates