Imported from LFK404/TanChiShe (
AGENTS.md). Install upstream withnpx skills add LFK404/TanChiShe. Copyright stays with the author.
🐍 贪吃蛇:项目开发宪法与技术规范
极简现代主义、移动优先(Mobile-First)的全栈贪吃蛇 Web 游戏与竞技排行榜系统。
🎯 1. 核心架构与技术栈
- 前端:Next.js 15 (App Router, SSG 静态导出) + Canvas 2D 物理微动效引擎 + Tailwind CSS + Web Audio API 原生声卡合成器 + 多层级触觉引擎
- 后端:Go 1.22 + Gin 高性能分层 API 服务(Azure App Service 容器化部署)
- 数据库:Supabase Cloud PostgreSQL (GORM 迁移,
users&game_records双表) - 托管与离线:腾讯云 EdgeOne Pages (
https://zhixu.online) + PWA (Service Worker 静态离线缓存) - 电竞回放与防作弊:
- Level 3 物理重放防作弊与原子事务:基于 Mulberry32 确定性种子 + Go 后端 1ms 无头物理重放引擎,客户端仅上报按键轨迹流,服务端亲自演算真实得分,杜绝数据伪造;开局独占会话令牌绑定(消费即焚与异步补货)与单次结算互斥锁,彻底杜绝网络抖动或状态重入导致的重复提交消费报错;致命碰撞即时断案退出,彻底杜绝浏览器帧时差误杀;GORM 事务原子提交战绩流水与最高分记录,排行榜接口强制
no-store实时防缓存; - 电竞对局录像播放器:支持风云榜一键观摩走位与 1.0x / 1.5x / 2.0x 变速回放;
- 无状态 HMAC 防伪会话:SHA256 加盐防篡改令牌与滑动窗口限流器(单 IP 20次/秒);
- 行级安全:Supabase 表启用 RLS 防止越权读写。
- Level 3 物理重放防作弊与原子事务:基于 Mulberry32 确定性种子 + Go 后端 1ms 无头物理重放引擎,客户端仅上报按键轨迹流,服务端亲自演算真实得分,杜绝数据伪造;开局独占会话令牌绑定(消费即焚与异步补货)与单次结算互斥锁,彻底杜绝网络抖动或状态重入导致的重复提交消费报错;致命碰撞即时断案退出,彻底杜绝浏览器帧时差误杀;GORM 事务原子提交战绩流水与最高分记录,排行榜接口强制
🎨 2. 视觉与交互规范
- 色彩体系(NCU HOME 极简现代主义):
- 品牌主色:天青蓝
#66CCFF(蛇头、重点强调、单字点睛) - 交互强调:深天蓝
#0099FF(CTA 按钮、激活高亮) - 浅蓝底色:
#EBF8FF(状态与徽标浅底) - 多巴胺点缀:得分红
#EF4444/ 长度绿#10B981/ 用时紫#8B5CF6/ 金果金#F59E0B - 页面背景:纯白
#FFFFFF/ 浅灰#F8FAFC,浅灰细线边框#E2E8F0无阴影 - 专属水印与官方品牌标:南大家园官方等轴测 3D 魔方徽标(天蓝 U、橙黄 C、珊瑚粉红 n)与彩色 NCUHOME 品牌组合,底部页脚等比例微标对齐;
- 品牌主色:天青蓝
- 多巴胺微拟态纯悬浮无框徽章规范(NCU Floating Glyph System):
- 纯悬浮无框剪影(Zero-Border Floating Glyph):完全承袭南大家园原生导航栏图标美学,彻底剔除外层圆角方块或底座边框,纯净悬浮于界面之上;
- 灵动阶梯形态生长(Morphological Evolution):同一系列徽章从易到难不仅递进换色,图案形态随等级实现具象化的阶梯生长与变形(如四芒微星 ➔ 三星聚芒 ➔ 星轨星曜 ➔ 四方晶芒 ➔ 超新星冠冕;灵蛇 ➔ 游龙 ➔ 巨蟒 ➔ 吞天神龙);
- 主基调与高光双色碰撞(Multi-tone Harmony):每一个图标均由专属主基调色(天青蓝、流金、翠绿、极光紫、炽焰红)辅以纯白或第二对比色高光,形成活泼层次;
- 暗态至亮态双阶点亮(Dual-State Evolution):
- 未解锁/休眠态:低饱和雾霾灰与浅灰低透明度图案,安静克制;
- 已解锁/激活态:瞬间点亮高饱和多色渐变,辅以同色系 0.35 Alpha 柔和发光光晕(Halo);
- 绝无通用 Emoji:全套 32 枚成就(8 大系列:得分、长度、时间、移速、步数、连击、金果、竞技)纯矢量代码级渲染,轻盈、锐利、零锯齿;
- 难度梯度微雕:千里单骑 2000 步、3 连击起步、五连绝世 5 连击;蛇身长度(20 ➔ 40 ➔ 60 ➔ 100 节)、生存时间(60s ➔ 120s ➔ 200s ➔ 300s)、极限移速(1.3x ➔ 1.6x ➔ 2.0x ➔ 2.5x)、得分突破(200 ➔ 500 ➔ 800 ➔ 1400 ➔ 2500 分),中间难度平滑过渡且终极成就具备鲜明的压轴大跨度挑战。
- 视听触三位一体交互与物理时序:
- 触觉反馈:支持强力/轻柔/关闭三档调节,触觉职责严格单向分层,杜绝双重误触;
- 极简外置流光导轨与绝对零物理位移:高度固定为 4px 的纤细流光微槽,金果显隐物理占位恒定,彻底消除棋盘 Canvas 抖动位移;金果倒计时与连击时钟由物理步序驱动,起步等待与暂停时物理冻结;
- 连击全蛇身金光环绕与柔和频闪:2 连击轻简浮字专注走位,3 连击起激活全蛇身金光外发光光晕(Golden Glow Halo)与 150ms 灵动流光频闪,5~6 节纯正浓郁流金橙黄光梭顺传,基于数学级连续 RGB 线性插值柔和过渡,晶体描边高光闪耀,剩余 1 秒急促频闪倒计时,找回最初极致爽快电竞飞驰感;
- Canvas 2D 动效、流体吞咽与情绪表情:
- 流体吞咽波:进食时正弦微隆起波(40ms/节)从蛇头传导至蛇尾,内部叠加晶莹自发光核(金果炽白);
- 情绪微表情与灵动明眸:正前方死角触发濒死惊慌神态(双眼瞪大 3.0px + 瞳孔颤抖)、吃果触发治愈笑弧(2.5px)、常态明眸微雕放大(眼白 2.6px / 瞳孔 1.45px 附带微高光点,双眼自边缘后移 1.5px 留出舒适前额留白)、落幕触发闭目;
- 死路石化冷却:蜕下死路前 180ms 内由蛇身天青渐变冷却为石化浅灰;
- 多巴胺微晶发光粒子系统:进食金果/红苹果激发 28/16 颗高初速自发光微晶粒子,尺寸微雕放大 50% 并叠加同色系多巴胺微发光光晕(Glow Halo),体素瓦解与四芒星曜灵动舒展;粒子、飘字、震颤仅在运行态推移,暂停时时空凝滞;重新开局自动清空视觉残留;
- 高分屏超清适配与 25×25 竞技棋盘:升级为 25×25 经典网格,Canvas 依据
devicePixelRatio严格自适应物理缓冲区并彻底消除重绘放大错位;暂停后提供标准真实 3.0 秒(1000ms/拍)恢复倒数,移动端外边距深度优化释放 35px+ 视觉占屏比;
- 温润声学与纯净防重叠双轨 BGM:Web Audio 原生合成器接入 2600Hz 低通滤波消除毛刺;暂停时滤波降至 360Hz 沉水磨砂声场;大厅温馨吉他与局内元气音乐智能转场;重开对局瞬间自动清退死亡结算延时大厅音轨,严密杜绝音轨重叠共播竞态,切局时滤镜频率强制复位 2600Hz 清澈声场。
- 走位几何生成艺术与风云榜排版体系:
- 基于 Chaikin 样条平滑、时序色彩渐变与半透明走位热力密度叠合,900×1200 像素高清离屏生成瑞士国际主义几何艺术海报,附带等宽四格战绩与 NCU HOME 28% 超椭圆拟物朱红印章,支持图片复制与保存;
- 风云榜单行纯净排布:耗时纯净跟随于得分之后同行显示无多余括号(如
480 1m 25s),老数据优雅兼容;底部战绩与近 5 局得分微折线双行分立,杜绝字线踩踏; - 结算面板与走位卡片人文极简:结算界面移除机械繁琐的“复制战报”,走位卡片采用纯文本按钮与纯净弹窗(无花哨矢量图标修饰),段位微拟态勋章点亮多彩微光;本地离线自动归档最近 10 局战绩;
- 全景深空墨蓝夜间模式与多端操控:
- 支持日/月纯矢量微拟态切换与
#0A0F1D深空墨蓝全景自适应,Header 顶栏、设置浮层、遮罩、控制台、Canvas 离屏背景,以及成就殿堂、新手指南、走位卡片、登录卡片全弹窗全链路墨蓝深邃; - 全屏滑屏(Swipe)+ 虚拟十字键双模;双指令转向排队缓冲队列杜绝掉头误判;全局数值注入
tabular-nums严格等宽防抖。
- 支持日/月纯矢量微拟态切换与
🛡️ 3. 工程与开发准则
- 单一一级
.gitignore:根目录统一维护权威.gitignore。 - 环境隔离:根目录不存
.env,下沉至client/.env.example与server/.env.example。 - 提交前零报错/零警告铁律(Zero-Diagnostics Pre-Commit Guardrail):每次 Git 提交前,必须主动检查 IDE “问题 (Problems)”面板 / 执行静态语法、类型与 ESLint 校验(
npm run lint)。确保 0 TypeScript 语法与类型报错、0 未使用变量、0 React Hook 依赖缺失;严禁在存在未解决的代码与 Hook 警告时提交代码(注:cSpell 等插件的单词拼写提示不在此限,可直接忽略)。 - 代码极简与整洁准则:代码实现力求极致精简优雅,严禁过度设计与无意义的冗余封装;关键算法、状态机、音效与后端逻辑保持准确精炼的中文注释。
- 文档极简表达准则:所有文档描述、提交信息与特性总结必须保持极致精炼通俗、直击核心改动,坚决拒绝冗长罗嗦与词藻堆砌,与极简美学保持高度统一。