design-system
Three boxes, one shape
A request to declutter the keyboard's panel, the game log's panel, and the board's heavy border turned out to be three separate questions with three separate answers, not one visual fix applied three times.
A deliberate departure from the mockup
Redesigning PvP invitations and Settings meant deciding, up front, where the request diverged from the just-locked design-system mockup rather than treating the gap as an oversight.
Rematching with the same opponent in real-time PvP
Starting another match against the same opponent previously required sharing a new room link. Token-chained authorization and a six-state UI matrix bring instant same-opponent rematches.
Leaderboard chips learn to explain themselves on tap
Native title tooltips were invisible on touch devices. Extracting LeaderboardChip brings tap-to-open DetailTooltip popups and scroll dismiss across all leaderboard tabs.
Seven phases under one umbrella
A complete visual redesign across 18 catalogued surfaces, guided by a token migration plan, oklch contrast math, and a seven-phase base branch umbrella.
Everything looked urgent
Separating primary action from danger, fixing fruit contrast, and making pill controls describe what they actually do.
Four tabs, one question at a time
Restructuring the stats page around mode, scope, and language, with prototypes and typed review catching what the first implementation missed.
The image that repaints itself
The daily share image gets real fruit icons, an OG-ratio canvas, and a gold rank line that fills in the moment a leaderboard submission lands.
A menu worth a second look
Four throwaway prototypes, reviewed live behind a query-string switch, turn three identical mode buttons into a hero card and a duo below it.
the norwegian umbrella: full bilingual gameplay across every mode, and the main menu restructure
Bringing Norwegian back properly as a PRD-driven umbrella project, introducing a 29-letter alphabet, per-language letter rarity, and a brand new main menu.