2026-09-08 09:20:15 +00:00
|
|
|
|
# Phase 1 设计系统与官网骨架报告
|
|
|
|
|
|
|
|
|
|
|
|
日期:2026-09-08
|
|
|
|
|
|
范围:P1-01 至 P1-06
|
|
|
|
|
|
状态:官网骨架完成;真实认证、TTS、CMS 和管理业务未实现。
|
|
|
|
|
|
|
|
|
|
|
|
## 1. 交付摘要
|
|
|
|
|
|
|
|
|
|
|
|
- 建立 Next.js App Router + TypeScript + Tailwind CSS 4 本地应用。
|
|
|
|
|
|
- 建立 KAOTINGS 深色设计系统:`#0D0F12` 背景、橙 `#FF6A00`、蓝 `#1677FF`、青 `#00D1E6`、近白文字及灰阶变量。
|
|
|
|
|
|
- 使用正式 Logo 的网页公开副本 `public/brand/logo_bt.png`;AI/PDF 原档仍不直接公开。
|
|
|
|
|
|
- 完成响应式导航、移动导航、页脚、跳过导航链接、键盘焦点样式和减少动效处理。
|
|
|
|
|
|
- 首页以蓝牙、音频、嵌入式和硬件产品为主体,AI Lab/TTS 保持轻量入口。
|
|
|
|
|
|
- 完成产品列表、产品详情模板、关于、联系、TTS、登录、注册、账户和管理页面布局。
|
|
|
|
|
|
- 所有缺少真实资料的产品内容集中在 `lib/content.ts`,并使用“开发占位”标识;没有虚构规格、联系方式、资质或操作成功。
|
|
|
|
|
|
|
|
|
|
|
|
## 2. P1 工作包
|
|
|
|
|
|
|
|
|
|
|
|
| 编号 | 状态 | 实现位置 | 验证 |
|
|
|
|
|
|
| --- | --- | --- | --- |
|
|
|
|
|
|
| P1-01 | 已完成 | `app/globals.css`、`components/ui.tsx` | 设计令牌、按钮、输入、焦点、间距和响应式规则已集中定义 |
|
|
|
|
|
|
| P1-02 | 已完成 | `components/site-header.tsx`、`components/site-footer.tsx`、`app/layout.tsx` | 桌面导航、移动菜单、账户入口、页脚和跳过导航已实现 |
|
|
|
|
|
|
| P1-03 | 已完成 | `app/page.tsx` | Hero、硬件产品、技术能力、AI Lab、联系入口已实现 |
|
|
|
|
|
|
| P1-04 | 已完成 | `app/products/`、`app/about/`、`app/contact/`、`lib/content.ts` | 列表和详情模板由集中式占位数据驱动 |
|
|
|
|
|
|
| P1-05 | 已完成(布局) | `app/tts/`、`app/login/`、`app/register/`、`app/account/`、`app/admin/` | 加载/空/待接入/禁用/错误语义已展示;真实业务未接入 |
|
|
|
|
|
|
| P1-06 | 功能实现与构建检查完成;真实视觉验收待完成 | `app/layout.tsx`、`app/not-found.tsx`、全局样式 | typecheck、build、路由冒烟和响应式源码检查通过;真实浏览器桌面/移动验收未完成 |
|
|
|
|
|
|
|
|
|
|
|
|
## 3. 页面清单
|
|
|
|
|
|
|
|
|
|
|
|
| 路由 | 当前能力 |
|
|
|
|
|
|
| --- | --- |
|
|
|
|
|
|
| `/` | 品牌首页,产品为主,AI Lab 为入口 |
|
|
|
|
|
|
| `/products` | 开发占位产品列表和分类视觉 |
|
|
|
|
|
|
| `/products/product-placeholder-a` | 产品详情模板 |
|
|
|
|
|
|
| `/products/product-placeholder-b` | 产品详情模板 |
|
|
|
|
|
|
| `/about` | 公司定位和原则,未虚构公司履历 |
|
|
|
|
|
|
| `/contact` | 联系信息边界和待确认状态 |
|
|
|
|
|
|
| `/tts` | TTS 工作台布局,控件禁用,不调用服务 |
|
|
|
|
|
|
| `/login`、`/register` | 认证表单布局,提交禁用 |
|
|
|
|
|
|
| `/account` | 账户、权益、额度和历史空状态 |
|
|
|
|
|
|
| `/admin`、`/admin/users`、`/admin/tts` | 管理后台布局和禁用状态 |
|
|
|
|
|
|
| `404` | 友好 Not Found 页面 |
|
|
|
|
|
|
|
|
|
|
|
|
## 4. 占位数据规则
|
|
|
|
|
|
|
|
|
|
|
|
所有开发占位内容集中在 `lib/content.ts`。当前只使用:
|
|
|
|
|
|
|
|
|
|
|
|
- `产品资料待补充 A/B` 作为模板标识,不作为正式产品名称。
|
|
|
|
|
|
- `无线音频`、`蓝牙配件` 作为待确认分类示意,不包含规格和性能承诺。
|
|
|
|
|
|
- CSS 抽象产品视觉只用于检查版式,不冒充真实产品图片。
|
|
|
|
|
|
- 联系页、页脚和关于页明确说明正式联系方式和公司资料待确认。
|
|
|
|
|
|
|
|
|
|
|
|
后续替换时只需先替换内容适配器;Phase 4 接入 CMS 时不应重写页面模板。
|
|
|
|
|
|
|
|
|
|
|
|
## 5. 本地验证
|
|
|
|
|
|
|
|
|
|
|
|
已执行:
|
|
|
|
|
|
|
|
|
|
|
|
- `npm install`:安装 46 个依赖包,审计结果为 0 vulnerabilities。
|
|
|
|
|
|
- `npm run typecheck`:通过。
|
|
|
|
|
|
- `npm run build`:通过,全部静态页面生成成功。
|
|
|
|
|
|
- 本地 `next start` 动态端口启动:成功,无启动错误。
|
|
|
|
|
|
- HTTP 冒烟:首页、产品列表、两个产品详情、关于、联系、TTS、登录、注册、账户、管理首页、用户管理、TTS 管理和 Logo 静态资源均返回 `200`。
|
|
|
|
|
|
- 响应式源码检查:容器、断点、移动导航、移动端排列、键盘焦点和 `prefers-reduced-motion` 已覆盖。此项是源码检查,不等同于实际设备视觉验收。
|
|
|
|
|
|
|
|
|
|
|
|
当前执行环境对固定本地端口 `3000`、`3100`、`3210` 返回 Windows `EACCES`;动态端口可启动,因此没有修改系统端口策略。当前环境没有可用的 Chrome、Edge、Firefox 或既有 Playwright,尚未完成真实桌面/移动浏览器视觉验收,也未生成截图。该项明确交由测试站浏览器或用户电脑/手机验收,不将源码检查写成设备验收通过。
|
|
|
|
|
|
|
|
|
|
|
|
## 6. 最小测试部署方案
|
|
|
|
|
|
|
|
|
|
|
|
### 6.1 本阶段部署范围
|
|
|
|
|
|
|
|
|
|
|
|
只部署官网骨架,不部署数据库、Redis、TTS、Worker、CMS 或认证服务。页面中的真实业务入口保持禁用或预览说明。
|
|
|
|
|
|
|
|
|
|
|
|
### 6.2 服务器所需软件
|
|
|
|
|
|
|
|
|
|
|
|
- Ubuntu 24.04 已有,建议安装 Node.js `20.9+`,当前项目本地使用 Node.js `24.11.1` 验证。
|
|
|
|
|
|
- npm 随 Node.js 提供。
|
|
|
|
|
|
- 不需要 PostgreSQL、Redis、对象存储、TTS 或 CMS。
|
|
|
|
|
|
- 可先不安装 Nginx/Caddy,直接由 `next start` 提供局域网 HTTP 验证。
|
|
|
|
|
|
|
|
|
|
|
|
### 6.3 部署目录和命令建议
|
|
|
|
|
|
|
|
|
|
|
|
在权限未落实前不执行。为避免第一阶段申请 root 部署目录,可优先评估用户目录:
|
|
|
|
|
|
|
|
|
|
|
|
```text
|
|
|
|
|
|
/home/flym/kaotings-www
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
建议流程:
|
|
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
|
npm ci
|
|
|
|
|
|
npm run build
|
|
|
|
|
|
npm run start -- -H 0.0.0.0 -p 3000
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
访问地址:`http://192.168.199.22:3000/`
|
|
|
|
|
|
|
|
|
|
|
|
### 6.4 权限和端口
|
|
|
|
|
|
|
|
|
|
|
|
- 文件复制到 `/home/flym/kaotings-www` 可由 `flym` 用户完成,前提是目录由该用户拥有。
|
|
|
|
|
|
- 安装 Node.js、配置系统级进程、开放防火墙端口或绑定受控服务可能需要 sudo/管理员权限。
|
|
|
|
|
|
- 当前 `flym` 属于 sudo 组,但非交互 sudo 仍需要额外认证;本次未安装或修改服务器服务。
|
|
|
|
|
|
- 最小访问端口:SSH `22` 用于运维,应用 TCP `3000` 仅允许局域网测试来源。
|
|
|
|
|
|
- 本阶段不开放 80/443,不配置正式域名或 HTTPS;认证和生产发布前仍必须完成可信 HTTPS。
|
|
|
|
|
|
|
|
|
|
|
|
### 6.5 测试部署退出条件
|
|
|
|
|
|
|
|
|
|
|
|
- 局域网浏览器能打开首页、产品模板、关于、联系和所有预览入口。
|
|
|
|
|
|
- 仅显示开发占位内容,不显示虚构联系方式、产品规格或成功状态。
|
|
|
|
|
|
- 服务器重启或进程重启后的启动方式已记录;正式部署前再替换为受控进程管理和反向代理。
|
|
|
|
|
|
|
|
|
|
|
|
## 7. 部署前核实状态
|
|
|
|
|
|
|
|
|
|
|
|
本方案已复核:本轮只部署 Next.js 官网骨架,所需新增软件为 Node.js 20.9+ 与 npm;不安装 PostgreSQL、Redis、TTS、Worker、CMS 或对象存储。服务器变更前需要确认 Node.js 安装权限、`/home/flym/kaotings-www` 写权限、TCP/3000 局域网访问权限,以及后续进程保持方式。当前尚未执行服务器安装或部署。
|
2026-09-08 09:23:41 +00:00
|
|
|
|
|
|
|
|
|
|
## 8. 测试站部署前实测
|
|
|
|
|
|
|
|
|
|
|
|
本次通过已确认的 SSH 主机执行只读核实:
|
|
|
|
|
|
|
|
|
|
|
|
- `/home/flym` 可写,适合作为用户级部署目录;`/home/flym/kaotings-www` 尚未创建。
|
|
|
|
|
|
- 未安装 Node.js 和 npm,无法执行 `npm ci`、`npm run build` 或 `next start`。
|
|
|
|
|
|
- `flym` 在 `sudo` 组,但 `sudo -n -l` 返回需要密码,当前没有可供自动部署使用的非交互 sudo 权限。
|
|
|
|
|
|
- 从开发机访问 TCP/3000 失败,当前没有应用监听或放行该端口。
|
|
|
|
|
|
- 本次未安装软件、创建服务、开放端口或启动测试站。
|
|
|
|
|
|
|
|
|
|
|
|
因此当前部署阻断项是:管理员需要安装 Node.js 20.9+ 和 npm,或提供用户目录可用的 Node.js;同时需要允许 `192.168.199.0/24`(或实际测试网段)访问 TCP/3000。若要求系统级服务或防火墙变更,还需要 sudo/管理员权限。权限落实后再执行最小部署,并提供 `http://192.168.199.22:3000/` 实际访问结果和真实浏览器视觉验收记录。
|
2026-09-08 10:14:26 +00:00
|
|
|
|
|
|
|
|
|
|
## 9. 最小测试部署结果
|
|
|
|
|
|
|
|
|
|
|
|
服务器变更权限已落实,本次已完成官网骨架部署:
|
|
|
|
|
|
|
|
|
|
|
|
- 安装 Node.js `v24.11.1` 和 npm `11.6.2`;未安装数据库、Redis、TTS、Worker、CMS 或对象存储。
|
|
|
|
|
|
- Node.js 官方压缩包已在服务器端完成 SHA-256 校验后安装到 `/opt`,命令链接位于 `/usr/local/bin`。
|
|
|
|
|
|
- 应用目录:`/home/flym/kaotings-www`。
|
|
|
|
|
|
- 执行 `npm ci` 和 `npm run build`,构建通过,全部静态路由生成成功。
|
|
|
|
|
|
- 以 `flym` 用户启动 `next start`,监听 `0.0.0.0:3000`;本次未创建 systemd 服务,重启后不会自动拉起。
|
|
|
|
|
|
- 开发机访问 TCP/3000 成功。
|
|
|
|
|
|
- 首页、产品列表、两个产品详情、关于、联系、TTS、登录、注册、账户、管理首页、用户管理、TTS 管理和 Logo 静态资源均从测试机返回 HTTP `200`。
|
|
|
|
|
|
- 当前访问地址:[`http://192.168.199.22:3000/`](http://192.168.199.22:3000/)。
|
|
|
|
|
|
|
|
|
|
|
|
## 10. 真实浏览器视觉验收
|
|
|
|
|
|
|
|
|
|
|
|
本执行环境没有可用的 Chrome、Edge、Firefox、Playwright 或截图工具,因此本轮没有生成桌面/移动截图,也不将 HTTP `200` 或源码响应式检查写成视觉验收通过。
|
|
|
|
|
|
|
|
|
|
|
|
请在桌面浏览器和手机浏览器访问上方地址,重点检查:
|
|
|
|
|
|
|
|
|
|
|
|
- 深色背景、橙蓝青配色、正式 KAOTINGS Logo 和导航布局。
|
|
|
|
|
|
- 桌面导航与移动端折叠菜单、首页产品主体和 AI Lab 轻量入口。
|
|
|
|
|
|
- 产品列表、两个产品详情模板和开发占位标识。
|
|
|
|
|
|
- `/tts`、`/login`、`/register`、`/account`、`/admin` 的空状态、禁用状态和预览提示。
|
|
|
|
|
|
- 移动端是否有横向溢出、文字截断、焦点不可见或触控区域过小。
|
|
|
|
|
|
|
|
|
|
|
|
上述人工检查完成前,Phase 1 的真实视觉验收保持“待完成”。
|
2026-09-08 11:51:22 +00:00
|
|
|
|
|
|
|
|
|
|
## 11. 本轮首页视觉修正
|
|
|
|
|
|
|
|
|
|
|
|
依据 `docs/design/references/kaotings-homepage-approved-reference.png` 和用户提供的测试截图完成以下调整:
|
|
|
|
|
|
|
|
|
|
|
|
- 内容容器最大宽度从 `1180px` 调整为 `1320px`,宽屏保留左右边界,减少主体过窄问题。
|
|
|
|
|
|
- 导航 Logo 使用正式组合 Logo,桌面高度调整为约 `44px`,页脚约 `56px`,始终保持原始比例。
|
|
|
|
|
|
- 导航、账户入口和移动按钮改为显式 `768px` CSS 断点,桌面完整导航显示时移动菜单按钮隐藏。
|
|
|
|
|
|
- 标题和区块标题启用 `text-wrap: balance`,降低中文孤字断行概率;产品和 AI Lab 标题的栏宽同步放宽。
|
|
|
|
|
|
- 首页 Hero、产品、技术和 AI Lab 区块的纵向间距收紧,按钮横向留白略增,改善“大空白、小内容”比例。
|
|
|
|
|
|
- 产品抽象视觉仍明确标注“开发占位”,不作为真实产品素材验收。
|
|
|
|
|
|
|
|
|
|
|
|
本轮实际检查记录:
|
|
|
|
|
|
|
|
|
|
|
|
- 本地:`npm run typecheck` 通过,`npm run build` 通过。
|
|
|
|
|
|
- 测试站:重新构建并监听 `0.0.0.0:3000`,`http://192.168.199.22:3000/` 返回 `200`。
|
|
|
|
|
|
- 实际浏览器 viewport:未核实。
|
|
|
|
|
|
- 浏览器缩放比例:未核实。
|
|
|
|
|
|
- 桌面/移动真实截图:未生成,待用户在实际浏览器验收。
|
|
|
|
|
|
- 源码断点目标:`<768px` 移动导航,`>=768px` 桌面导航;这不是实际设备验收结果。
|
2026-09-08 12:56:08 +00:00
|
|
|
|
|
|
|
|
|
|
## 12. 部署一致性复核
|
|
|
|
|
|
|
|
|
|
|
|
用户反馈截图仍为旧视觉后,重新核对发现前一次增量传输使用了扁平目标路径:文件被写入部署根目录,而不是 `app/` 和 `components/` 子目录;实际构建因此继续使用旧源码。已删除误传根目录文件,并按正确子目录重新同步。
|
|
|
|
|
|
|
|
|
|
|
|
- 监听进程:PID `6505`,命令为 `next start -H 0.0.0.0 -p 3000`。
|
|
|
|
|
|
- 工作目录:`/home/flym/kaotings-www`。
|
|
|
|
|
|
- 当前构建提交号:`0e46643`。
|
|
|
|
|
|
- 页面页脚已显示 `build 0e46643`,用于浏览器端版本核对。
|
|
|
|
|
|
- 实际响应引用 CSS:`/_next/static/chunks/2911lr-pv0kp2.css`。
|
|
|
|
|
|
- 该 CSS 资源已核实包含 `1320px`、`desktop-nav`、`mobile-nav-trigger` 和 `min-width:768px` 规则。
|
|
|
|
|
|
- `app/globals.css`、`app/page.tsx`、`components/brand-mark.tsx`、`components/site-header.tsx`、`components/ui.tsx` 的服务器哈希已与本地视觉修正提交内容一致。
|
|
|
|
|
|
- 当前访问地址:[`http://192.168.199.22:3000/`](http://192.168.199.22:3000/)。
|
|
|
|
|
|
|
|
|
|
|
|
浏览器仍需强制刷新后重新截图,确认截图页脚出现 `build 0e46643`。真实 viewport、缩放比例、桌面/移动布局仍未由本执行环境直接测量,继续标记为待验收。
|