Claude CodeNext.jsSupabaseEnterprise

Lenovo Global Kickoff '26

A second-screen app for Lenovo's Global Kickoff broadcast. 3,900 employees took part across four time zones, built in five weeks.

2026·Solo designer and developer
Landing, geo time-locked across four regional broadcast windows

Landing, geo time-locked across four regional broadcast windows

Session list. Each quiz unlocks via a 4-digit code from the broadcast

Session list. Each quiz unlocks via a 4-digit code from the broadcast

Division leaderboard. Employees ranked within their own division, not the company

Division leaderboard. Employees ranked within their own division, not the company

Outcome

Shipped ahead of the 9 April broadcast, built by one person with Claude Code. Lenovo's pen test cleared it with zero application-level vulnerabilities, deployed across their global workforce and five sister company domains.

3,900

Employees took part

5 weeks

Brief to go-live

0 critical

Pen test vulnerabilities

12

Code-gated sessions

Design decisions

01

A participation mechanic, not a content hub

The default second screen is a companion page holding the agenda, speaker bios and a feedback form, which nobody opens twice. I made the broadcast itself the key: each session unlocks with a 4-digit code shown on screen, so the app only works if you are actually watching. It turned a passive 90 minutes into something with a reason to keep the phone in hand.

02

Compete against your division, not the whole company

A single global leaderboard means everyone outside the top twenty is invisible and disengages within minutes. Segmenting by division gave every employee a table they could realistically place in, and gave the business the internal rivalry it actually wanted from a kickoff.

03

The app follows the sun

Four staggered regional broadcast windows across AP, EMEA, NA and LA could have been solved with someone manually opening and closing access at 3am. I built the time lock into the product instead, so the app opens and closes per geo on its own. No one had to run it live, and no region could see another region's answers early.

04

Answers never reach the client

The pen test found quiz answers readable client-side, exposed registration data and a public API key. Rather than obscure them, I moved scoring behind server-side edge functions so the client only sends a submission and gets a result back, added anonymous auth and rate-limited code entry. Three findings closed in 48 hours, nothing raised on the follow-up.

Process

A mobile-first web app running alongside a 90 minute pre-recorded broadcast. I built it as a code-gated quiz rather than a passive content hub: each session unlocks with a 4-digit code shown on screen, so viewers compete on a division leaderboard instead of watching. Four staggered regional windows meant the app had to open and close itself across AP, EMEA, NA and LA with nobody running it live. Lenovo's cybersecurity team pen-tested mid-build and found three issues: exposed registration data, quiz answers readable client-side and a public API key query. I closed all three in 48 hours by moving scoring behind server-side edge functions, replacing open access with Supabase anonymous auth and rate limiting code entry. The China team's follow-up raised nothing.

Context

Lenovo needed a global engagement tool for a workforce spread across four time zones, live in five weeks at a third of an agency build's budget. That ruled out separate design, development and QA teams.