The Last Press
A shared-timer social game in which every scarce press resets one global countdown and the last player to act before time expires wins the season.
THE QUESTION
Why this exists
Most multiplayer experiences hide tension behind complex rules. The Last Press asks whether one shared deadline and one scarce action can turn collective waiting into a legible global game of chicken.
THE BUILD
What this prototype explores
The Last Press reduces a multiplayer game to a timer, a scarce button, and a question: will somebody else act first? Spectators watch one global deadline while signed-in players spend a limited monthly allowance to reset it. A successful press becomes the new public event, and the final presser wins when the clock is allowed to expire. The implementation is more substantial than the interface suggests. TanStack Start renders the experience, Supabase supplies Auth, Postgres, and Realtime, a database function serializes competing presses, and Paddle-backed membership expands the monthly allowance. Client-side clock correction, realtime invalidation, polling, sound, haptics, public profiles, season history, and an administrative control room complete the event loop. That loop is not safe to present as a playable launch today. The public deployment was reachable but visibly stuck after expiration, mobile layouts overflowed, a profile aggregate rendered invalid output, and profile-row permissions allow a signed-in player to modify fields that determine game and membership integrity. The prototype is therefore published here as an architecture and product concept with its deployment URL retained for review, not exposed as a launch action.
DECISIONS
What shaped the build
Keep the timer server-authoritative
Clients derive the visible countdown from a Postgres expiration timestamp, correct local clock drift through a server-time endpoint, subscribe to Supabase Realtime, and retain polling as a recovery path.
Make every press atomic
One PL/pgSQL operation locks the profile and season, applies a two-second per-user rate limit, consumes a press, resets the deadline, and records the event before committing.
Turn scarcity into the mechanic
A free account receives one monthly press, membership adds ten, and the winner moves the next season clock one duration bucket shorter, longer, or unchanged.
Let presentation carry the drama
Oversized countdown typography, synthesized WebAudio, vibration, reset overlays, and rising urgency make a one-button interaction feel like a live event.
KNOWN LIMITS
What is not being claimed
- Authenticated users can currently update every field on their own profile row, including presses_remaining, is_member, and banned, so game and billing integrity are not launch-safe.
- No scheduled settlement route or job was found; the verified public season remained at 00:00:00 until another press or an administrator triggers settlement.
- At 390 px the oversized timer caused horizontal overflow, and the public Saber profile displayed Infinity:NaN:NaN:NaN for its closest press.
- The source has no automated tests, its lint baseline fails, and documented purge and membership-only sniper behavior are not fully implemented.