feat: 创作工作台统一 + AI味检测/白标 + 移动端补全 + 合规发布闭环

- 新增创作工作台 studio.html:合并选题/内容工厂/文章管理为单一 tab 入口(iframe embed 模式)
- 新增 AI味检测模块(ai_slop API + 页面,合规软硬问题分级)
- 新增白标品牌配置(branding API + 页面 + deploy 私有化交付包)
- 发布闭环:publishing 放宽至 editor + records/mark-published 接口
- 移动端响应式补全(admin/calendar/ai-slop 表格卡片兜底)
- 修复菜单幂等播种缺陷(按 path 对齐,避免功能页孤立)
- 新增短视频脚本 shortvideo.py 与 2026 市场调研简报
This commit is contained in:
yuzhiran
2026-07-11 12:36:01 +08:00
parent 3d596275d5
commit 7e953afbd2
39 changed files with 2418 additions and 311 deletions
+68
View File
@@ -0,0 +1,68 @@
# 宇之然内容创作平台 — 私有化 / 白标部署包
# YuZhiRan Content Platform — Private / White-label Deployment Package
本目录用于把「宇之然内容创作平台」作为**可私有化部署的 AI 内容中台**交付给客户(MCN、企业市场部、行业自媒体团队),
或作为白标产品转售。平台已内置白标能力:部署后管理员在「白标设置」页即可改平台名称 / Logo / 主色 / 支持邮箱。
## 交付形态
- 单容器即可运行(默认 SQLite,零外部依赖);生产建议挂 PostgreSQL(见下方 docker-compose 注释)。
- 全部为静态前端 + FastAPI 后端,无第三方 SaaS 依赖,可跑在内网 / 离线环境。
- 符合《AI 生成合成内容标识办法》:AI 稿默认注入显式 + 隐式声明,发布前必须由真人校验(系统不代发)。
## 一分钟启动(SQLite,零依赖)
```bash
# 1. 准备后端环境变量(含管理员密码、LLM Key)
cp .env.example ../platform/backend/.env
vim ../platform/backend/.env # 至少填 LLM_API_KEY / DEFAULT_ADMIN_PASSWORD
# 2. 构建并启动
docker compose up -d --build
# 3. 访问
# 前台: http://<服务器IP>:8001/
# 后台: http://<服务器IP>:8001/admin.html (默认 admin / 见 .env 中 DEFAULT_ADMIN_PASSWORD
```
## 生产部署(PostgreSQL
编辑 `docker-compose.yml`,取消 `db` 服务与 `web``USE_POSTGRES=true` / `DATABASE_URL` 的注释,
并删掉 `web``USE_POSTGRES=false` 那一行。数据库数据持久化在命名卷 `yzr_pgdata`
## 白标(转售 / 客户内网)
1. 用管理员登录后台 → 左侧「白标设置」。
2. 填入客户的平台名称、Logo URL、主色、支持邮箱 → 保存。
3. 前台导航与品牌色即时生效。无需改代码、无需重新构建镜像。
(底层读取 `system_configs` 表中 `brand_name / brand_logo / brand_primary_color / brand_support_email`
亦可直接 `UPDATE system_configs SET value='...' WHERE key='brand_name';` 批量初始化多客户。)
## 数据目录
容器内:
- 代码:`/app`
- SQLite 数据:`/app/platform/backend/yu_zhi_ran.db`
- 生成内容/图片:`/app/automation`(建议挂载卷持久化)
## 环境变量说明(platform/backend/.env
| 变量 | 说明 |
| --- | --- |
| USE_POSTGRES | true 用 PostgreSQLfalse 用 SQLite |
| PG_HOST/PG_PORT/PG_DATABASE/PG_USER/PG_PASSWORD | PostgreSQL 连接(USE_POSTGRES=true 时) |
| SECRET_KEY | JWT 签名密钥(**务必修改**) |
| DEFAULT_ADMIN_USERNAME / DEFAULT_ADMIN_PASSWORD | 初始管理员(首次启动创建) |
| LLM_API_KEY / LLM_MODEL / LLM_PROVIDER | 主 LLMnvidia / opencode-go / sensenova 等) |
| OPENCODE_API_KEY / OPENCODE_BASE_URL / OPENCODE_MODEL | 备用推理通道 |
| SENSENOVA_API_KEY | 配图生成(可选) |
## 目录结构(源码)
```
yu-zhi-ran/
├── platform/backend/ # FastAPI + SQLAlchemy 后端
├── platform/frontend/ # Vue3 CDN 前端(无需构建)
├── automation/ # 选题/案例/生成内容数据
├── scripts/ # 采集 / 创作 / 发布 脚本
├── tests/ # 集成测试
└── deploy/ # 本部署包
```
## 许可与交付建议
- 本包以「私有化实例」方式交付,每个客户一套独立部署(数据隔离)。
- 建议定价:私有化买断 + 年运维/更新订阅;或按实例数授权。
- AI 内容合规责任在内容发布方(客户),平台仅提供声明注入与发布前人工校验闸门。