Home
Softono

Daer Novel

Open source TypeScript
78
Stars
5
Forks
19
Issues
0
Watchers
4 months
Last Commit

 About Daer Novel

基于 AI 的长篇小说创作助手

Platforms

Web Self-hosted

Languages

TypeScript

Need Help Installing Daer Novel?

We provide expert installation service for this software. Our team will install, configure, and secure Daer Novel on your server. plans start at just $30.

Daer Novel

View on GitHub
Daer Novel Logo

Daer Novel

基于多智能体协作的 AI 长篇小说生成平台

从设定到连载,全流程 AI 创作系统

License TypeScript Next.js Express PostgreSQL Docker

在线体验 · 快速开始 · 文档 · 联系我们


✨ 核心特性

🤖 多智能体协作

7 个专业 AI 代理分工协作,从大纲规划到正文生成,完整覆盖小说创作流程

📚 结构化知识库

自动提取和管理人物、地点、道具等关键要素,保证长篇连载的世界观一致性

⚡ 实时进度追踪

BullMQ 异步任务队列 + WebSocket 实时推送,随时掌握生成进度

🎨 现代化界面

Next.js 14 + Tailwind CSS,玻璃态设计风格,优雅流畅的用户体验

🔌 多 AI 提供商

支持 OpenAI、Claude、DeepSeek 等主流 AI 模型,灵活配置

🔐 完善的认证系统

支持邮箱密码、GitHub、Google、LinuxDo 等多种登录方式

📱 跨平台支持

基于 Tauri 的桌面端,支持 Windows、macOS、Linux

🐳 容器化部署

Docker Compose 一键部署,支持生产环境快速上线


📸 项目预览

主页

小说详情

章节创作

章节创作

章节创作

章节创作

章节创作

章节创作


🚀 快速开始

前置要求

  • Node.js >= 18
  • Docker & Docker Compose
  • npm >= 9

一键启动

# 1. 克隆项目
git clone https://github.com/yuwangi/daer-novel.git
cd daer-novel

# 2. 配置环境变量
cp .env.example .env
# 编辑 .env 填入你的 AI API 密钥

# 3. 运行启动脚本
chmod +x start.sh
./start.sh

访问应用

💡 详细安装指南请查看 SETUP.md


🏗️ 技术栈

后端技术

技术 用途
Express.js 轻量级 Web 框架
PostgreSQL + pgvector 数据库和向量检索
Drizzle ORM 类型安全的 ORM
BullMQ + Redis 任务队列和缓存
Socket.IO WebSocket 实时通信
Better Auth 现代化认证框架

前端技术

技术 用途
Next.js 14 React 框架(App Router)
TypeScript 类型安全
Tailwind CSS 原子化 CSS 框架
Socket.IO Client 实时通信客户端
Tauri 桌面端打包

AI 集成

  • OpenAI - GPT-4、GPT-3.5 Turbo
  • Anthropic - Claude 3.5 Sonnet
  • DeepSeek - DeepSeek Chat
  • 自定义提供商抽象层

🎯 AI 代理系统

代理 功能 输入 输出
OutlineAgent 生成全文大纲 小说设定 完整故事大纲
TitleAgent 生成书名 大纲 3-5 个书名建议
ChapterPlanningAgent 章节结构规划 大纲 卷/章节结构
ChapterOutlineAgent 章节大纲 章节信息 章节大纲
ChapterDetailAgent 章节细纲 章节大纲 详细情节点
ContentAgent 正文生成 细纲 章节正文
ConsistencyAgent 一致性校验 生成内容 校验结果

📁 项目结构

daer-novel/
├── apps/
│   ├── backend/              # Express 后端
│   │   ├── src/
│   │   │   ├── database/     # 数据库配置和模型
│   │   │   ├── services/ai/  # AI 提供商和代理
│   │   │   ├── queue/        # BullMQ 任务队列
│   │   │   ├── routes/       # API 路由
│   │   │   ├── middleware/   # 中间件
│   │   │   └── utils/        # 工具函数
│   │   └── package.json
│   └── frontend/             # Next.js 前端
│       ├── app/              # 页面路由
│       ├── components/       # React 组件
│       ├── lib/              # 工具库
│       └── package.json
├── .github/workflows/        # CI/CD 配置
├── docker-compose.yml        # Docker 编排
├── .env.example              # 环境变量模板
└── README.md

📖 文档


🔧 开发指南

启动开发服务器

# 方式一:同时启动前后端(Web 模式)
pnpm run dev

# 方式二:桌面端开发模式(Tauri)
pnpm run tauri:dev

# 方式三:分别启动
cd apps/backend && pnpm run dev
cd apps/frontend && pnpm run dev

应用打包 (Tauri)

# 生成当前系统的安装包
pnpm run tauri:build

注意:打包前请确保已安装 Rust 环境

自动化发布 (GitHub Actions)

推送版本标签自动触发多平台构建:

git tag v1.0.0
git push origin v1.0.0

数据库操作

cd apps/backend

# 生成迁移
npm run migration:generate

# 执行迁移
npm run migration:run

# 填充演示数据
npm run seed

🧪 测试流程

  1. 注册账户 - 访问 http://localhost:8001/register
  2. 创建小说 - 选择类型、风格、填写背景设定
  3. 生成大纲 - 进入小说详情 → 大纲标签 → AI 生成
  4. 添加人物 - 人物卡标签 → 添加主角、配角
  5. 生成章节 - 章节标签 → 生成章节结构
  6. 查看内容 - 阅读器查看生成的正文

🤝 贡献指南

我们欢迎各种形式的贡献!

  • 🐛 提交 Bug 报告
  • 💡 提出新功能建议
  • 📝 改进文档
  • 🔧 提交代码改进

请阅读 贡献指南 了解详细信息。


📄 许可证

本项目采用 MIT 许可证。


🙏 致谢


📮 联系我们

个人微信
个人微信
扫码添加,交流技术
微信群
微信交流群
加入社区,共同成长

⭐ 如果这个项目对你有帮助,请给一个 Star!⭐

开始你的 AI 创作之旅! 🎉