# Play Any Page - Full Documentation > Play Any Page (playanypage.com) turns any webpage into a playable arcade game — right in your browser. Install a one-click bookmarklet, navigate to any website, and watch the page transform into your game board. Every game runs 100% client-side with zero data collection, no server upload, and no registration required. ## About Play Any Page was built around a simple idea: what if the webpage you're reading right now could become an arcade game? Instead of loading a separate game in a new tab, Play Any Page injects game logic directly into the current page via a bookmarklet. Page elements — text, images, buttons — become destructible bricks, edible food, whackable targets, or taxi passengers. The result is a unique gameplay experience that changes with every website you visit. All games share a common architecture: a lightweight JavaScript bookmarklet that overlays game mechanics on top of the existing DOM. No browser extension is needed, no data ever leaves the browser, and games can be toggled on and off instantly. ## Who Is It For Play Any Page is for anyone who's ever been bored staring at a webpage and thought "I wish I could just play a game on this." Whether you're procrastinating at work, killing time between meetings, or just looking for a fun distraction — every page you open is already a game level waiting to happen. Your email inbox, a Wikipedia article, a news feed, or your company's internal wiki — all of them are fair game. ## Games ### Brickout Classic brick-breaking arcade game. Page elements are scanned and turned into destructible bricks. Move the paddle with the mouse, launch the ball with a click, and destroy everything on the page. - **Controls**: Mouse to move paddle, Click to launch ball, Scroll to find more targets - **Power-ups**: Multi-ball (split into 3), Widen paddle, Sticky paddle, Grow ball (green = good); Shrink paddle, Speed up, Shrink ball (red = bad) - **Rules**: 3 lives, combo multiplier for consecutive hits, reinforced bricks need multiple hits - **URL**: https://playanypage.com/game/brickout ### Page Snake The classic Snake game reimagined on any webpage. The snake slithers across the page, eating page content as food while avoiding obstacles formed by page elements. - **Controls**: WASD or Arrow Keys to move, Space to boost - **Modes**: Classic (manual control) and Auto (AI-driven, sit back and watch) - **Features**: Stealth mode (Middle Click) for discreet play, boost speed with Space - **Rules**: Eat food to grow, avoid hitting yourself or obstacles, page elements become walls - **URL**: https://playanypage.com/game/snake ### Whack the Page Whack-a-mole meets the web. Page elements pop up as targets — click them before they disappear. Features a reaction-time scoring system with combo multipliers. - **Controls**: Mouse to aim, Click to whack, Scroll to find more targets - **Scoring**: Reaction-based multipliers — Perfect (< 200ms), Great (< 400ms), Good (< 600ms), Slow (> 600ms) - **Rules**: 3 lives, combo streaks multiply score, golden targets give bonus points, missed targets cost a life - **URL**: https://playanypage.com/game/whack-the-page ### Page Raiders Recruit characters from webpage text and command them in battle across the page. Uses character-level text scanning to turn individual letters into game entities. - **URL**: https://playanypage.com/game/page-raiders ### Page Taxi Drive a taxi across the webpage, picking up and delivering passengers to their destinations. Page elements become the cityscape for your taxi route. - **URL**: https://playanypage.com/game/page-taxi ## How It Works 1. Visit a game page on playanypage.com (e.g., playanypage.com/game/brickout) 2. Drag the bookmarklet button to your browser's bookmarks bar 3. Navigate to any webpage you want to play on 4. Click the bookmarklet — the page instantly transforms into your game board 5. Click the bookmarklet again to stop and restore the original page ## Key Features ### Bookmarklet-Based Injection No browser extension or installation required. Each game is packaged as a self-contained JavaScript bookmarklet that injects into any webpage. Games are mutually exclusive — starting one automatically stops any other running game. ### Page Element Scanning Games automatically scan the current viewport for visible page elements (text, images, buttons, etc.) and convert them into game targets. As you scroll, new elements are lazily scanned and added to the game board. ### Score Sharing After a game ends, players can share their scores via a cryptographically signed URL. The share link includes the game name, score, and the URL of the page played on. Signature verification prevents score tampering. ### Stealth Mode Some games (Brickout, Snake) support a "stealth mode" that reduces the game's visual opacity, making it blend in with the page — perfect for discreet play. ### Privacy-First All game logic runs entirely in the browser. No data is collected, no analytics are tracked, and no server communication occurs during gameplay. Score sharing URLs encode data client-side. ### Internationalization Available in English and Simplified Chinese (简体中文). Language is determined by URL prefix — English uses the root path, Chinese uses /zh-hans/. ## Frequently Asked Questions **Is my data safe?** Absolutely. All games run 100% in your browser. No data is ever uploaded to any server. The bookmarklet contains the entire game — no external requests are made during gameplay. **Does it work on any website?** It works on most websites. Games scan visible page elements (text, images, etc.) and use them as game targets. Sites with very little visible content may have fewer targets. Sites with strict Content Security Policies may block bookmarklet execution. **Will it break the webpage?** No. Games overlay on top of the page without modifying the underlying DOM structure. Clicking the bookmarklet again (or pressing ESC) cleanly removes the game and restores the page to its original state. **Can I share my scores?** Yes. After each game, you can generate a shareable link that includes your score, the game played, and the page URL. Scores are cryptographically signed to prevent tampering. **How do I uninstall a game?** Simply delete the bookmarklet from your bookmarks bar. There is nothing else to remove — no extensions, no cookies, no local storage. ## Supported Languages | Language | Code | URL Prefix | |---|---|---| | English | en | / (default) | | 简体中文 (Simplified Chinese) | zh-hans | /zh-hans/ | ## Technical Specifications - **Frontend framework**: Astro + React - **Styling**: Tailwind CSS v4 - **Game engine**: Vanilla TypeScript, compiled via esbuild into self-contained bookmarklets - **Page scanning**: Custom DOM scanner with viewport-aware lazy loading and character-level text detection - **Collision detection**: Circle-AABB contact testing, bounce axis resolution - **Particle system**: SoA (Structure of Arrays) object pool for hit effects - **Score sharing**: HMAC-SHA256 signed payloads encoded in URL parameters - **Hosting**: Cloudflare Workers - **Privacy**: Zero server-side processing during gameplay; no cookies or tracking