3.2 KiB
3.2 KiB
AI写网文平台 · 光湖码字
光湖码字 · AI创作伙伴平台 — 首期功能模块
概览
本模块实现「AI写网文」平台的三大核心功能:
- 平台首页(Landing Page) — 对话式设计入口
- 用户注册/登录系统 — 手机号+验证码,三种角色(作者/编辑/运营),JWT鉴权
- AI伙伴对话框 — 登录后分配专属AI伙伴,WebSocket实时对话
技术栈
| 层级 | 技术 | 说明 |
|---|---|---|
| 前端 | React 18 + TypeScript + Vite | UI 组件化 |
| 样式 | Tailwind CSS 3 | 响应式设计 |
| 状态管理 | Zustand | 轻量状态 |
| 实时通信 | Socket.io | AI伙伴对话 |
| 后端 | Node.js + Express + TypeScript | API 服务 |
| 认证 | JWT | Token 鉴权 |
| AI | OpenAI SDK | GPT-4 / Claude |
| 数据 | Notion API(主)+ 内存缓存(降级) | 数据存储 |
目录结构
writing-platform/
├── frontend/ ← 前端(React + Vite)
│ ├── src/
│ │ ├── pages/ ← 页面组件
│ │ ├── components/ ← UI 组件
│ │ ├── hooks/ ← 自定义 Hooks
│ │ ├── services/ ← API 调用封装
│ │ └── stores/ ← Zustand 状态管理
│ └── dist/ ← 构建输出
│
├── backend/ ← 后端(Express + TypeScript)
│ ├── src/
│ │ ├── routes/ ← API 路由
│ │ ├── middleware/ ← 中间件
│ │ ├── services/ ← 业务逻辑
│ │ └── models/ ← 数据模型
│ └── dist/ ← 构建输出
│
├── nginx-writing.conf ← Nginx 路由配置参考
└── README.md ← 本文件
API 接口
| 方法 | 路径 | 说明 |
|---|---|---|
| POST | /api/writing/auth/send-code |
发送验证码 |
| POST | /api/writing/auth/register |
注册 |
| POST | /api/writing/auth/login |
登录 |
| GET | /api/writing/user/me |
获取当前用户 |
| POST | /api/writing/ai/chat |
AI 对话(REST) |
| GET | /api/writing/health |
健康检查 |
AI伙伴
| 角色 | AI伙伴 | 人设 |
|---|---|---|
| 作者 | 笔灵 | 温暖的创作伙伴 |
| 编辑 | 慧眼 | 专业的审稿助手 |
| 运营 | 星图 | 敏锐的数据分析师 |
环境变量
| 变量名 | 说明 | 状态 |
|---|---|---|
LLM_API_KEY |
AI 模型 API Key | ✅ 已有 |
LLM_BASE_URL |
AI 模型端点 | ✅ 已有 |
NOTION_TOKEN |
Notion API Token | ✅ 已有 |
JWT_SECRET |
JWT 签名密钥 | ⭕ 需配置 |
SMS_ACCESS_KEY |
阿里云短信 Key | ⏳ 待配置 |
SMS_ACCESS_SECRET |
阿里云短信 Secret | ⏳ 待配置 |
WRITING_DB_ID |
Notion 用户表 ID | ⭕ 需创建 |
REDIS_URL |
Redis 连接 | ⭕ 可选 |
部署
# 构建前端
cd frontend && npm install && npm run build
# 构建后端
cd ../backend && npm install && npm run build
# 启动后端(PM2)
pm2 start ecosystem.config.js
# Nginx 配置(参考 nginx-writing.conf)
路由
- 前端入口:
guanghulab.com/writing/ - 后端端口:3100
© 2026 光湖纪元 · 国作登字-2026-A-00037559