Open Arcade Template

The one canonical layout for Open Arcade pages. Every page is built from this template, in this same tree, by the same builder (build_openarcade.py). One tree, one builder, no copies drifting apart.

Anatomy of the watch page

▶
Header, 60px:logo · search · gray Shuffle · Discord login (top right)
Chips row: All · Worlds · Multiplayer · Platformers · Arcade · Puzzles · Cozy
Player, 16:9, the game loads here

Under the player: game title, maker row, actions (Favorite, Full screen, Open game, Share), then the description box with how to play and your progress line.

Up next sidebar, 402px

Below: the browse grid of every game, then the footer.

House rules

Adding a game

Add one entry to the games list in the builder (id, title, play URL, maker, genre, category, description, how to play, multiplayer flag when it truly applies), drop its cover at img/<id>.webp, rebuild, deploy, and verify live by title, cover, and a click in the player.