27de28a487
根目录统一管理九个 workspace 与唯一 lockfile 迁移 CI、Jenkins 和容器的根目录单次 npm ci 补齐 hoist 兼容、版本校验与 workspace 门禁 同步依赖边界方案、运维文档和长期记忆
94 lines
4.2 KiB
Markdown
94 lines
4.2 KiB
Markdown
# Genarrative / 陶泥儿
|
||
|
||
一个 AI 原生互动内容与小游戏平台,当前主站聚焦图片画布创作、项目与素材管理,以及账号、钱包和后台管理等平台公共能力。
|
||
|
||
当前已经具备这些主要能力:
|
||
|
||
- 图片画布编辑、项目与素材管理
|
||
- 图片、视频、音频等外部生成任务
|
||
- 账号、钱包、充值、兑换码与个人资料
|
||
- 后台运营、配置与生产运维工具
|
||
- AI 游戏创作独立 App
|
||
|
||
## 运行
|
||
|
||
前置条件:
|
||
|
||
- Node.js
|
||
- Rust / Cargo
|
||
- SpacetimeDB CLI
|
||
|
||
安装依赖:
|
||
|
||
```bash
|
||
npm install
|
||
```
|
||
|
||
该命令会按根 `package.json` 的 npm workspaces 一次安装主站、Admin、Mobile、Desktop、AGC、Preview Deployer、内部 packages 与工具依赖;仓库只使用根 `package-lock.json`,不要在子目录单独执行 `npm install` / `npm ci` 或提交嵌套 lockfile。
|
||
|
||
准备环境变量:
|
||
|
||
- 复制 `.env.example` 为 `.env.local`
|
||
- 只填写本次联调所需配置;不要提交 `.env.local`、密钥、Token 或其它本地认证信息
|
||
- api-server 环境变量和 Provider 配置以 `.env.example` 及当前开发运维文档为准
|
||
|
||
启动开发环境:
|
||
|
||
```bash
|
||
npm run dev
|
||
```
|
||
|
||
补充说明:
|
||
|
||
- `npm run dev` 会启动 SpacetimeDB standalone、独立 `bgfilter-worker`、Rust `api-server`、主站 Vite 与后台 Vite,适合完整联调;内部 worker ready 后才启动 API。
|
||
- 主站默认地址是 `http://127.0.0.1:3000`,后台可从 `http://127.0.0.1:3000/admin/` 进入,也可直连 `http://127.0.0.1:3102`。
|
||
- 五个模块可独立启动:`npm run dev:spacetime`、`npm run dev:api-server`、`npm run dev:bgfilter-worker`、`npm run dev:web`、`npm run dev:admin-web`;其中 `dev:api-server` 会安全带起同 runner 的 BgFilter worker 依赖。
|
||
- 如需自动刷新后端模块,使用 `npm run dev -- --watch`;其中 `spacetime-module` 改动后只会重新发布模块,不会重启 standalone,Rust 源码改动会把 `api-server` 与 `bgfilter-worker` 作为一个组合单元重启。主站和后台前端源码变化交给 Vite 自身 HMR,不由外层 watcher 重启。非 watch 模式下可在 `npm run dev` 终端输入 `rs api-server`、`rs bgfilter-worker`、`rs web`、`rs admin-web`、`rs spacetime` 或 `rs all`,其中 `rs spacetime` 也是只重新发布模块。
|
||
|
||
构建生产包:
|
||
|
||
```bash
|
||
npm run build
|
||
```
|
||
|
||
## 常用检查
|
||
|
||
类型检查:
|
||
|
||
```bash
|
||
npm run lint
|
||
```
|
||
|
||
编码检查:
|
||
|
||
```bash
|
||
npm run check:encoding
|
||
```
|
||
|
||
## 主要结构
|
||
|
||
主运行时:
|
||
|
||
- [src/active-main.tsx](./src/active-main.tsx)
|
||
- [src/ActiveApp.tsx](./src/ActiveApp.tsx)
|
||
- [src/AuthenticatedApp.tsx](./src/AuthenticatedApp.tsx)
|
||
- [src/routing/activeAppRoutes.tsx](./src/routing/activeAppRoutes.tsx)
|
||
- [src/components/platform-entry/PlatformEntryActiveFlowShell.tsx](./src/components/platform-entry/PlatformEntryActiveFlowShell.tsx)
|
||
|
||
创作与项目能力:
|
||
|
||
- [src/components/image-editor/ImageCanvasEditorView.tsx](./src/components/image-editor/ImageCanvasEditorView.tsx)
|
||
- [src/components/creation-home/CreationLandingView.tsx](./src/components/creation-home/CreationLandingView.tsx)
|
||
- [src/components/project/ProjectGalleryView.tsx](./src/components/project/ProjectGalleryView.tsx)
|
||
|
||
## 文档入口
|
||
|
||
`docs/` 已在 `2026-05-15` 完成压缩整理,旧 PRD、设计、审计、阶段计划和技术流水账不再作为实现依据。当前只读取:
|
||
|
||
- [docs/README.md](./docs/README.md):当前文档总入口。
|
||
- [docs/【项目基线】当前产品与工程约束-2026-05-15.md](./docs/【项目基线】当前产品与工程约束-2026-05-15.md):产品、命名、UI、协作和废弃路线。
|
||
- [docs/【后端架构】server-rs与SpacetimeDB数据契约-2026-05-15.md](./docs/【后端架构】server-rs与SpacetimeDB数据契约-2026-05-15.md):DDD 边界、API 分组、SpacetimeDB schema 规则和表目录。
|
||
- [docs/【玩法创作】平台入口与玩法链路-2026-05-15.md](./docs/【玩法创作】平台入口与玩法链路-2026-05-15.md):创作入口、草稿架和各玩法当前口径。
|
||
- [docs/【开发运维】本地开发验证与生产运维-2026-05-15.md](./docs/【开发运维】本地开发验证与生产运维-2026-05-15.md):本地启动、检查、部署、埋点和运营查询。
|
||
- [UI_CODING_STANDARD.md](./UI_CODING_STANDARD.md):像素 UI 资产与编码规范。
|