Files
probably-rendering-one-more…/README.md
T

2.5 KiB
Raw Blame History

啡跃 Endoleap

啡跃把笔记、参考素材和创作工作台放在同一个 Next.js 应用里。应用位于 apps/dashboard,共享主题与品牌资源位于 packages/brand。

入口 用途
/ 浏览内容,打开 /explore/<id> 查看笔记
/guide 浏览指导文档
/graphic 图文排版
/infinite_canvas 无限画布
/api?agent_mode=True 业务 API 目录
/studio/api Studio API 目录

运行

准备 Node.js 24、pnpm 11.25.0、PostgreSQL、S3 兼容对象存储和 FFmpeg。参考 环境变量示例,将变量注入 Web、初始化和媒体 worker 进程。邮箱注册与找回密码需要可用的 SMTP 服务。

在仓库根目录运行 pnpm install --frozen-lockfile 和 pnpm build。然后在 apps/dashboard 目录准备数据库和存储,初始化管理员认证并启动 Web。

node dist/bootstrap.cjs
node dist/auth-cli.cjs init
pnpm start

媒体 worker 在同一目录作为独立进程运行 node dist/worker.cjs。绑定管理员验证器时,在远程交互终端执行 node dist/auth-cli.cjs qr。已有实例复用原数据库、对象存储和私有认证文件。

Monorepo 与 Turborepo

仓库在现有 pnpm workspace 上接入 Turborepo,无需运行面向新项目的 npx create-turbo@latest。应用仍位于 apps/dashboard,源码品牌包仍位于 packages/brand;子包脚本和应用产物路径保持原样。依赖统一锁定在根目录 pnpm-lock.yaml,安装从仓库根目录执行。

根目录命令由 Turbo 调度:pnpm dev 启动开发任务,pnpm dev:dashboard 仅启动 Wiki,pnpm build 构建应用及 worker/CLI,pnpm typecheck 生成 Next.js 类型并检查 TypeScript。pnpm start 继续直接启动现有应用。也可以在子包目录使用原有命令。

锁文件合并保留应用原有依赖解析。唯一重叠差异是 @tailwindcss/postcss 的间接 PostCSS 依赖:品牌包原为 8.5.32,现在沿用应用的 8.5.31;品牌包直接声明的 PostCSS 8.5.6 不变。

迁移阶段所有任务禁用缓存,根命令使用 --env-mode=loose 透传既有环境变量,保留品牌资源准备步骤的每次执行。后续启用缓存前,需明确环境变量输入、跨包资源和所有输出。当前不配置 CI/CD,也不自动发布。

仅检查任务计划、不执行编译或生成应用产物时,可运行 pnpm build --dry=json 和 pnpm typecheck --dry=json。完整构建与运行验证另行执行。