Pebble

Pebble is Funday’s Peggle-inspired physics game: an iframe-themeable static plugin loaded by the /play/pebble SvelteKit shell. The player aims a launcher, clears orange pegs, chains multipliers, catches the moving free-ball bucket, and progresses through eighteen levels.

Current truth

  • Public play route: /play/pebble
  • Integration: static iframe plugin
  • Runtime iframe: /games/assets/pebble/build/?embed=1&theme=themeable
  • Source: games/pebble/
  • Built artifact: games/pebble/build/
  • Shell: frontend/src/routes/play/[id]/+page.svelte
  • Theme boundary: Funday theme resolution → ViewportPool/GameViewport → iframe theme contract
  • Game contract: FundayBridge; no raw postMessage in GameViewport.svelte

Audit status

A live audit on 2026-07-24 confirmed that the game boots, accepts pointer input, renders gameplay feedback, activates multiball, updates score and multiplier, and reaches the game-over state. The audit did not prove a level-two transition through ordinary play.

The visual defects are documented in Visual Audit, the ordered remediation work is in Roadmap, and build/deployment truth is in Deployment.

Definition of done

Pebble is visually ready when the shell, iframe, HUD, overlays, themes, and responsive layout read as one Funday game; every meaningful state has accessible equivalents; and the exact public route has been verified after both the frontend shell and Pebble iframe artifacts are deployed.

Ask Docs

AI assistant to help answer questions about the documentation. Answers are read-only and cite docs/source.

Hi! How can I help you with the documentation today? Answers are read-only and cite docs/source.

Ctrl+Enter to send