~/talk

CSS as a Game Engine: Building Playful, Stateful Web Experiences Without JS

Talkat Commit Your Code 2026 · 2026-09-02..09-04· [css, creative-coding]
slides:none on file

Argues that HTML+CSS alone can act as a game engine by treating UI controls as state, using radio buttons as FSM and checkboxes for inventory, CSS counters for scoring and keyframe animations with negative delays to stagger mole appearances. Live build of a nine‑hole whack‑a‑mole uses 9 inputs, grid layout, :has selectors and CSS random() (works in Safari during demo; Chrome support pending). Demo runs but DOM bloat, accessibility and lack of true randomness remain real costs.

AI-written summary · about

  1. 0:00Introduction
  2. 1:17CSS beyond styling
  3. 3:03Browser as game engine
  4. 4:07Finite state machines
  5. 8:21Game states with inputs
  6. 10:08CSS selectors for logic
  7. 11:32Can CSS do Doom?
  8. 13:26Benefits of CSS games
  9. 13:48Live coding Whack-a-Mole
  10. 24:15Randomness limits in CSS
  11. 25:40Cross-browser randomness
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.