Niles Luther

ACE // OPS

April 2026 to present · aceops.app · GitHub

Radar charts comparing the top-ranked player in each of four classes across six metrics, with a bar for each metric below
The rankings page in dark mode, captured October 13, 2026.

Problem

A legacy online game publishes its rankings as one raw table with no history. Players could see who led today, with no record of who was rising, falling, or gone.

What I built

A ranking platform on an event-sourced architecture. Every change in the game’s public data is stored as an event, and every metric on the site derives from that log. A Next.js and TypeScript front end on Vercel reads from a Cloudflare Workers and Neon Postgres backend.

Results

265,798
events recorded across 843 players
99.6%
of 6,116 scheduled captures succeeded
44
countries, with 76% of visitors outside the US
60
signatures in 24 hours on an open letter; the publisher then upgraded server capacity