From 9e31f968f511a1d81a820a6b47e743487e5c28a9 Mon Sep 17 00:00:00 2001 From: MingNian <1281442923@qq.com> Date: Tue, 28 Jul 2026 10:27:47 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=A0=E9=99=A4=E9=83=A8=E7=BD=B2=E6=96=87?= =?UTF-8?q?=E6=A1=A3=E5=92=8C=E4=BA=A4=E6=8E=A5=E6=96=87=E6=A1=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 按项目负责人要求移除 DEPLOY.md 和 交接文档.md。 技术总监从 README.md 和 AGENTS.md 了解项目即可。 --- DEPLOY.md | 133 ------------------------------------------ 交接文档.md | 162 ---------------------------------------------------- 2 files changed, 295 deletions(-) delete mode 100644 DEPLOY.md delete mode 100644 交接文档.md diff --git a/DEPLOY.md b/DEPLOY.md deleted file mode 100644 index dc7fcf3..0000000 --- a/DEPLOY.md +++ /dev/null @@ -1,133 +0,0 @@ -# 脑晴测 H5 部署说明(自有服务器 + Node.js) - -更新时间:2026-07-28 - -## 一、项目简介 - -- 中文、免登录的认知能力测评 H5 -- 含四项游戏 + AI 生成报告(DeepSeek) -- 前端 React 19 + Vite,已构建为静态文件 -- 服务端是零依赖单文件 Node.js(`server.mjs`) - -## 二、仓库结构 - -``` -. -├── brain-h5/ -│ ├── dist/client/ # 预构建前端(已含,无需再 build) -│ ├── server.mjs # Node.js 服务器入口(零依赖) -│ ├── src/ # 前端源码(仅二次开发时需要) -│ ├── worker/index.js # Cloudflare Worker 版本(本方案不用) -│ └── ... -├── 交接文档.md -└── DEPLOY.md # 本文件 -``` - -## 三、部署步骤(自有服务器 + Node.js) - -### 1. 系统要求 - -- Node.js v18 或更高(推荐 v20+) -- 任何能跑 Node.js 的操作系统(Linux/Windows/macOS) - -不需要 npm install,不需要 pnpm,不需要 React 开发环境。 - -### 2. 克隆仓库 - -```bash -git clone <仓库地址> -cd Brain -``` - -### 3. 配置 API Key - -`DEEPSEEK_API_KEY` 通过环境变量传入,**不要写入任何文件**。 - -Linux/macOS: -```bash -export DEEPSEEK_API_KEY=sk-你的key -``` - -Windows PowerShell: -```powershell -$env:DEEPSEEK_API_KEY = "sk-你的key" -``` - -或者用 systemd / pm2 / docker 等进程管理工具注入环境变量。 - -### 4. 启动服务 - -```bash -cd brain-h5 -node server.mjs -``` - -默认监听 `0.0.0.0:4173`。可通过环境变量改: - -```bash -PORT=8080 HOST=127.0.0.1 node server.mjs -``` - -### 5. 反向代理(推荐) - -如果服务器有 Nginx,建议反代到 Node 服务: - -```nginx -server { - listen 80; - server_name your.domain.com; - - location / { - proxy_pass http://127.0.0.1:4173; - proxy_set_header Host $host; - proxy_set_header X-Real-IP $remote_addr; - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; - proxy_set_header X-Forwarded-Proto $scheme; - } -} -``` - -### 6. 进程守护(生产环境) - -推荐用 pm2: - -```bash -npm install -g pm2 -cd brain-h5 -DEEPSEEK_API_KEY=sk-你的key pm2 start server.mjs --name brain-h5 -pm2 save -pm2 startup -``` - -## 四、健康检查 - -部署完成后应能通过: - -| 检查项 | 期望结果 | -|---|---| -| `GET /` | 返回 HTML(200) | -| `GET /assets/index-*.js` | 返回 JS bundle(200) | -| `POST /api/analyze`(带 JSON body) | 返回 JSON 报告(200) | -| 未配置 Key 时 `POST /api/analyze` | 返回 503 `{"error":"AI service is not configured..."}` | - -## 五、关键安全约束 - -- `DEEPSEEK_API_KEY` **必须**通过环境变量传入,**不要**写入仓库、commit、或前端 bundle。 -- `.env` 文件已在 `.gitignore` 中排除,不会进入仓库。 -- Key 由项目负责人通过私密渠道单独发送。 - -## 六、本地开发(可选,技术总监无需操作) - -如需修改源码并重新构建: - -```bash -cd brain-h5 -pnpm install # 或 npm install -pnpm run dev # 本地开发服务器 -pnpm run build # 重新构建到 dist/client/ -``` - -## 七、联系人 - -- 项目负责人:MingNian -- 项目根目录:`D:\GMS project` diff --git a/交接文档.md b/交接文档.md deleted file mode 100644 index b646951..0000000 --- a/交接文档.md +++ /dev/null @@ -1,162 +0,0 @@ -# 脑晴测 H5 项目交接文档 - -更新时间:2026-07-23 - -## 1. 新对话首先要知道的事情 - -- 项目以后只以 **D 盘版本**为准。 -- 项目根目录:`D:\GMS project` -- 前端目录:`D:\GMS project\brain-h5` -- 一键启动入口:`D:\GMS project\一键启动脑晴测.bat` -- 开始修改前,必须完整阅读:`D:\GMS project\brain-h5\AGENTS.md` -- 默认产品是铺满浏览器的响应式 H5 网页,不允许重新套上黑色手机外框、状态栏、摄像头开孔或设备选择器。 -- 桌面浏览器使用横向完整布局;手机浏览器自动变成适合竖屏操作的布局。 -- 项目是中文、免登录的认知能力训练/测评原型,文案避免疾病诊断和医疗结论。 - -给新 Codex 对话的建议开场指令: - -> 我们继续开发 `D:\GMS project` 里的脑晴测 H5。请先完整阅读项目根目录的 `交接文档.md` 和 `brain-h5\AGENTS.md`,以后只操作 D 盘项目,不再使用 C 盘旧目录。先检查现状,再继续我的新需求。 - -## 2. 用户提供的参考资料 - -原始录屏位于: - -- `D:\QQ2026722-17165.mp4` -- `D:\QQ2026722-172534.mp4` - -录屏用于理解游戏规则、节奏和元素之间的逻辑关系,不要照抄对方的品牌、文案或视觉资产。 - -已从录屏总结出的核心规则: - -1. 符号匹配:顶部出现目标符号,用户根据固定映射表输入对应数字。 -2. 交替连线:顺序为“1 → 最小扇形 → 2 → 大一档扇形……→ 10 → 最大扇形/完整圆形”;节点位置应有邻近关系,不能完全随机乱放。 -3. 飞机注意力:飞机持续移动,用户按照指定颜色识别目标;飞机数量与难度逐轮增加,并体现机头方向。 -4. 购物记忆:先记购物清单,再让商品在传送带上依次移动出现,用户选择目标商品。 -5. 金额计算:显示目标金额、可选纸币/硬币和已选金额区;已选货币可再次点击移除,然后提交答案。 - -## 3. 当前已经完成的内容 - -### 产品外壳 - -- `src\App.tsx` 已改为直接渲染 `Prototype`。 -- 默认页面不再使用原开发模板的 `MobileRuntime` 或 `PhoneFrame`。 -- 已实现全浏览器响应式布局,桌面和手机共用同一个网页入口。 - -### 页面流程 - -当前包含: - -- 首页 -- 用户资料选择 -- 测评总览 -- 符号匹配 -- 交替连线 -- 飞机注意力 -- 购物工作记忆 -- 金额计算 -- 综合报告 - -### 游戏交互 - -- 符号匹配包含教学/练习门槛、固定映射、数字键盘和正式题目。 -- 连线游戏使用受约束的节点路径,数字与不同大小扇形交替连接,并显示 SVG 连线。 -- 飞机会使用 CSS 动画持续飞行,支持蓝色/橙色目标和逐轮增加数量。 -- 商品会在传送带上移动,可点击选择,并显示选中状态。 -- 购物轮次结束后进入金额计算,可添加和移除纸币/硬币。 -- 已有结果报告卡片与分级摘要。 - -### 视觉表现 - -- 使用珍珠白底色、青色/紫色/珊瑚色光谱渐变。 -- 采用玻璃质感、柔和阴影和轻量 2.5D 元素。 -- 有桌面端和手机端断点,手机端已确认无横向溢出。 - -## 4. 主要代码位置 - -- 主界面与全部游戏逻辑: - `D:\GMS project\brain-h5\src\Prototype.tsx` -- 产品专属样式: - `D:\GMS project\brain-h5\src\prototype.css` -- 应用入口: - `D:\GMS project\brain-h5\src\App.tsx` -- 全局样式: - `D:\GMS project\brain-h5\src\styles.css` -- 内部启动脚本: - `D:\GMS project\brain-h5\scripts\start-local.cmd` -- 根目录双击启动脚本: - `D:\GMS project\一键启动脑晴测.bat` - -项目目前主要集中在一个较大的 `Prototype.tsx` 中。后续功能继续增长时,可以在不改变现有行为的前提下,将各游戏逐步拆分到独立组件和数据文件,但不要为了拆分而破坏当前可运行版本。 - -## 5. 启动方式 - -用户日常使用: - -1. 双击 `D:\GMS project\一键启动脑晴测.bat` -2. 脚本会启动本地开发服务。 -3. 浏览器自动打开 `http://127.0.0.1:4173/` - -开发命令: - -```powershell -cd 'D:\GMS project\brain-h5' -pnpm run dev --host 127.0.0.1 --port 4173 -``` - -如果系统没有全局 Node/pnpm,一键启动脚本会优先尝试 Codex 自带的运行环境。 - -## 6. 验证命令 - -每次重要修改后至少运行: - -```powershell -cd 'D:\GMS project\brain-h5' -pnpm run check:runtime -pnpm run build -pnpm run test:sites -``` - -上一轮已经通过: - -- Runtime 完整性检查 -- TypeScript 与 Vite 生产构建 -- Sites Worker 测试 4/4 -- 桌面浏览器交互检查 -- 390 × 844 手机视口响应式检查 -- 浏览器控制台无报错 - -`App.tsx` 和 `styles.css` 曾因移除手机预览壳而被用户明确授权修改,对应 runtime lock 已更新。以后如果再次修改受保护运行时文件,必须先确认确有必要,验证后再更新 lock;不要通过关闭检查来绕过。 - -## 7. 关键产品决策 - -- 真正用户打开的是普通网页,不是嵌在手机模型里的演示画面。 -- H5 本身自适应:电脑打开是完整网页,手机打开仍然可以正常使用。 -- 游戏不能只是静态摆放;飞机、传送带商品等必须真正运动。 -- 连线节点的位置、顺序和大小关系必须符合游戏逻辑。 -- 视觉需要高级、精致、有层次,但不能为了装饰影响题目识别和老年用户操作。 -- 按钮和可点击目标应保持足够大的触控面积。 -- 原始录屏只作为逻辑参考,最终产品应拥有原创视觉。 -- DeepSeek 或其他模型密钥只能保存在服务端,不能放进 `VITE_` 环境变量或前端包。 -- 未经用户明确要求,不部署到公网。 - -## 8. 下一阶段建议 - -当前版本已经可以完整演示,但后续仍可继续打磨: - -1. 根据用户逐项试玩反馈,调整每个游戏的题目节奏、动画速度和难度曲线。 -2. 为连线游戏补充更严格的命中判定、错误提示、拖线轨迹与触屏容错。 -3. 为飞机游戏增加更丰富但可控的飞行路线,避免目标重叠或飞出可操作区域。 -4. 让传送带每轮商品队列、出现间隔和干扰项配置更系统化。 -5. 完善计时、正确率、反应时和报告数据之间的真实关联,替换纯展示型结果。 -6. 增加进度保存、重新开始、退出确认和异常恢复。 -7. 做一轮真实手机触控测试,重点检查滑动、连线和快速点击。 -8. 如果准备正式上线,再补充服务端、数据隐私说明、无障碍细节和部署配置。 - -## 9. C 盘旧目录说明 - -原项目目录曾位于: - -`C:\Users\明年\Documents\GMS project` - -其中项目文件已经清空。当前 Codex 任务可能暂时占用旧目录的空文件夹外壳;关闭当前任务或 Codex 后即可删除该空文件夹。后续开发不得再把文件写回该目录。 -