Yarn - Speedrun verification tool
A tool that replaced up to an hour of manual moderator work with a 60-second audit. Built for the competitive speedrunning community.
-
React
-
TypeScript
-
Tailwind CSS
-
Firebase Firestore
-
YouTube iFrame API
-
Jest
-
GitHub Actions
-
CI/CD Pipeline

Try it live with Sample Data: https://kr0ss0.github.io/yarn/?run=2p8L9LzGUWWbtTA7Huba
(Press the Reset-button to clear data)
The problem
Competitive speedrunning runs on Load Removed Time. The clock pauses during loading screens so that hardware speed doesn't determine who wins. For over a decade, the verification process had an unavoidable flaw:
A runner times their own loads. A moderator then re-times the entire video from scratch to confirm the runner wasn't mistaken. For a long run this takes up to an hour of duplicated work, on every submission.
Yarn eliminates the redundancy entirely.
How it works
Yarn splits the process into two modes.
Runner mode: The runner marks each load start and end frame-by-frame directly against their YouTube video, then exports their markers as a shareable cloud link or JSON file.
Verifier mode: The moderator opens the shared link and is dropped straight into a structured audit. Instead of scrubbing through video manually, they use automated jump-points that snap the playhead to the exact frame before, at, and after each load. Visual confirmation replaces data entry.
The result: verification time drops from up to an hour to under 60 seconds. The timing data is fully public, meaning any community member can inspect the exact frames used for a record, removing the "black box" from competitive moderation.
Validation Engine
Yarn includes a real-time validation system that monitors the marker timeline as the runner works. It automatically detects:
-
Load screens that overlap each other
-
Invalid durations where the end frame precedes the start
-
Markers placed outside the boundaries of the timed run
Every inconsistency is flagged instantly with a contextual warning. No invalid dataset can be exported.
Testing & CI/CD
The project ships with unit tests on pure utility functions and a CI/CD pipeline via GitHub Actions that runs the full test on every push and deploys automatically to GitHub Pages on merge to main.


