用原生 TypeScript 写了 8 个经典小游戏,零运行时依赖,开源了

MinjiaHu 2026-09-13 13:54 1

在线试玩: https://minjia-hu.github.io/retro-arcade/


源码: https://github.com/Minjia-Hu/retro-arcade


Retro Arcade:八款经典小游戏


一个复古风格的浏览器小游戏合集,打开就能玩,不用安装和注册。包含贪吃蛇、俄方块、打砖块、Flappy 、2048 、扫雷、数独和五子棋,统一做成了一套街机界面,支持电脑端和手机触屏操作。


除了基本玩法,也补了一些方便操作和继续游玩的功能:



  • 俄方块:暂存、硬降、屏幕按键。

  • 2048:单步撤销。

  • 数独:笔记模式,自动存档。

  • 五子棋:双人对弈,三档 AI 难度。


方块试玩


实现上是原生 TypeScript 加 Canvas ,没有运行时依赖,构建产物 gzip 后约 35 kB ,不含字体。游戏规则和渲染分离,规则逻辑不依赖 DOM 或 Canvas ; 269 条单测覆盖游戏规则、公共模块和界面逻辑,另有 28 条 Playwright 端到端测试。五子棋 AI 在 Web Worker 中运行 α-β 搜索。MIT 许可。


架构和大部分代码是我和 Claude Code 一起写的,设计决策和踩过的坑都记在仓库的 docs/design 和 CLAUDE.md 里,感兴趣可以翻。


手机端的布局和手感还在打磨,尤其想听不好点、容易误触的地方。也想知道大家觉得哪款最好玩、哪款最需要改。

最新回复 (0)
    没有回复
* 帖子来源V2EX
返回