An arcade game collection reborn in modern web aesthetics. 11 classic titles rebuilt as single-file HTML5 games — no install, no ads, no login. Browser open and play.
🚀 Play now: https://games.wyf0931.cn
All 11 games are live. Each is a self-contained HTML file — zero dependencies, zero build step.
| # | Title | Difficulty | Core Tech | Play |
|---|---|---|---|---|
| 1 | TANK COMMAND | ★★★ | Behavior Tree + AABB collision + FSM | ▶ |
| 2 | SPACE INVADERS | ★ | Matrix formation movement | ▶ |
| 3 | PONG | ★ | AI Lerp tracking + angle reflection | ▶ |
| 4 | T-REX RUN | ★ | Infinite scroll + lenient hitbox | ▶ |
| 5 | SNAKE | ★★ | Linked-list queue + fixed timestep | ▶ |
| 6 | MINESWEEPER | ★★ | Flood Fill (BFS) + cell state machine | ▶ |
| 7 | TOWER CLIMB | ★★ | Camera follow + procedural platforms + gravity | ▶ |
| 8 | BREAKOUT | ★★★ | Vector reflection + 5 power-ups + particles | ▶ |
| 9 | 2048 | ★★★ | 2D array slide-merge + tile transitions | ▶ |
| 10 | GOLD MINER | ★★★ | Pendulum physics + 6 item types + levels | ▶ |
| 11 | GOMOKU | ★★★ | 8-direction win detection + eval-function AI | ▶ |
Coming next: TETRIS (★★★★) — SRS rotation matrix + 7-bag randomizer
- Pure HTML5 + CSS3 + ES6+ JavaScript — no framework, no build tool
- Canvas 2D for game worlds, DOM for UI
- Shared component library (
shared/) for i18n / theme / input / game loop / FSM - Cloudflare Pages deployment — zero backend
- Google Fonts for typography (Audiowide, Orbitron, Rajdhani, etc.)
- Game loop —
requestAnimationFrame+ update/draw separation - Finite State Machine (FSM) — MENU / PLAYING / GAMEOVER / WIN state transitions
- Behavior Tree —
Selector / Sequence+ condition/action nodes for NPC AI - AABB collision — axis-aligned bounding boxes + rejection sampling
- Flood Fill — iterative BFS for Minesweeper
- Minimax + alpha-beta pruning — Gomoku AI
- Pendulum physics — Gold Miner hook
- Vector reflection — Pong + Breakout
| Tool | Role |
|---|---|
| Claude Code | AI coding agent — implements games from natural-language specs |
| GLM 5.2 | Reasoning model behind Claude Code in this project |
| Chrome DevTools MCP | Browser automation for testing |
| Cloudflare Wrangler | Deploy to Cloudflare Pages |
Method: Vibe Coding — natural-language-driven development. Human directs with intent and aesthetic choices; AI implements the code. The repo is the artifact of this collaboration: 11 games shipped in ~2 days with no manual line-by-line coding.
If you're curious about the workflow, every commit message in git log shows what AI was instructed vs. what it produced.
games/
├── index.html Homepage (arcade-style game center)
├── tank.html TANK (single-file era)
├── <game>.html Each game in its own file
├── shared/
│ ├── wyf-games.js Shared library: i18n / theme / input / loop / fsm / ui.header()
│ └── wyf-games.css Reset + theme tokens + UI primitives
├── screenshots/ Game thumbnails (used by homepage + SEO)
├── docs/
│ ├── tank.md TANK development case study
│ ├── component-library.md Shared library API docs
│ └── roadmap.md Game design specs (all 12 titles)
├── llms.txt Site summary for LLMs (https://llmstxt.org)
├── robots.txt Crawler directives
├── sitemap.xml SEO sitemap
├── AGENTS.md Collaboration guide for AI agents
└── README.md This file (English)
docs/tank.md— How TANK is built: FSM / behavior tree / AABB / i18ndocs/component-library.md—WyfGames.*shared library APIdocs/roadmap.md— Design specs for all 12 gamesAGENTS.md— Conventions for AI agents working on this repollms.txt— Concise summary for LLM crawlers
- 🌗 Dark / light theme — remembers your preference
- 🌐 Chinese / English — full i18n with
localStoragepersistence - 🎯 Per-game difficulty — beginner / intermediate / advanced
- 📱 PC-first layout — keyboard + mouse, responsive on tablet
- 🚫 No ads, no tracking, no login — pure gaming
Deployed on Cloudflare Pages at https://games.wyf0931.cn.
To deploy your own fork:
# Clone
git clone https://github.com/wyf0931/games.git
cd wyf-games
# Option A: Connect the repo to Cloudflare Pages dashboard
# Option B: Deploy via Wrangler CLI
npx wrangler pages deploy . --project-name=wyf-gamesNo environment variables. No build commands. Just push static files.
This is a Vibe Coding showcase — contributions welcome! Two ways to help:
- Play & report bugs — open an issue
- Implement the next game — claim an open issue (e.g. TETRIS #11) and ship it following the patterns in
docs/
MIT — see LICENSE.
- Game designs — Inspired by arcade classics (Atari, Namco, Taito, Nintendo, etc.)
- Dev stack — Claude Code, GLM, Cloudflare, Google Fonts
- Vibe Coding — The methodology that made this possible
Built with Claude Code + Vibe Coding