# Courseify - AI 驱动的课程内容生成工具

> **状态**: ✅ 核心功能已实现
> **定位**: 从课程规划到多平台导出的完整创作辅助工具

**核心价值**: 帮助教师、培训师和内容创作者从零完成课程设计,支持全领域课程、三种创作模式、完整创作流程,并与 Notion/飞书/网易云课堂等平台无缝对接

---

## ⚠️ 产品边界

**Courseify 专注于课程内容设计和教学规划**,与在线教学平台互补。

✅ **做什么**:
- 全领域课程设计 (编程/设计/商业/语言等)
- 三种创作模式 (引导/快速/混合)
- 课程大纲生成与优化
- 章节内容创作辅助
- 练习题和案例设计
- 视频脚本生成
- 导出到 Notion/飞书/网易云课堂

❌ **不做什么**:
- 视频录制和剪辑
- 直播授课平台
- 学员管理系统
- 作业批改系统

---

## 🎯 核心功能

### 1. 全领域课程支持

支持主流课程领域:
- 💻 **编程开发** - 编程语言/框架/工具
- 🎨 **设计创意** - UI/UX/平面/视频
- 💼 **商业管理** - 运营/营销/管理
- 🌍 **语言学习** - 英语/日语等
- 📊 **数据分析** - 数据科学/分析/BI
- 🎓 **学术课程** - 学科知识
- 🛠️ **职业技能** - 职场工具/技能
- 🧠 **软技能** - 沟通/思维/时间管理

### 2. 三种创作模式

**引导模式 (Coach)** - 100%原创
- AI 逐章引导思考教学逻辑
- 提问式激发课程设计
- 质量实时检查
- 适合: 追求原创的教师

**快速模式 (Express)** - 快速迭代
- AI 快速生成完整大纲
- 基于规格快速输出
- 适合: 快速原型,灵感激发

**混合模式 (Hybrid)** - 平衡效率与原创
- AI 生成框架和关键点
- 用户填充教学细节
- 适合: 需要结构指引的创作者

### 3. 完整创作流程

从规划到导出的完整工作流:

**课程规划阶段**:
1. `/spec` - 定义课程规格
2. `/objective` - 设定学习目标
3. `/structure` - 设计课程结构

**内容创作阶段**:
4. `/outline` - 生成课程大纲
5. `/content` - 创作章节内容
6. `/exercise` - 生成练习题
7. `/script` - 生成视频脚本

**质量与导出**:
8. `/review` - 内容质量评估
9. `/export` - 导出到多平台

### 4. 多平台导出

**在线课程平台**:
- ✅ 网易云课堂 CSV 导入格式
- ✅ 腾讯课堂大纲格式
- ✅ Udemy 课程结构

**知识库平台**:
- ✅ Notion Database 导入
- ✅ 飞书文档格式
- ✅ 语雀目录结构

**通用格式**:
- ✅ Markdown 文档
- ✅ Excel 大纲表格
- ✅ HTML 静态页面

---

## ✨ 新功能: 参考课程系统 v0.2.0

基于你收集的优质专栏,Courseify 现在可以:

### 🎯 智能推荐 (`/reference`)
- 根据你的课程规格,自动匹配相似的优质专栏
- Top 3 推荐,每个都说明参考价值
- 领域/难度/关键词多维度匹配

### 📊 结构分析 (`/analyze`)
- 深入剖析专栏的章节结构和进阶路径
- 识别教学设计特色(如预习篇/基础篇/进阶篇划分)
- 提供可落地的借鉴建议

### 💡 集成参考能力
- `/outline` - 设计大纲时可参考优秀专栏的结构
- `/review` - 质量对标,与行业标杆对比

### 📚 如何使用

```bash
# 1. 添加你的专栏资料到 reference-courses/
cp -r ~/Downloads/专栏/* reference-courses/

# 2. 扫描生成索引
bash scripts/bash/scan-references.sh

# 3. 创建课程时查看推荐
courseify init "我的课程"
/spec
/reference  # 智能推荐相似专栏
/analyze Flutter核心技术与实战  # 深入分析
```

**注意**: 专栏数据是你的私人资料,不会提交到 Git 仓库。

---

## ✨ 新功能: 风格模拟系统 v0.3.0

学习大师的教学方法,AI 以优秀专栏作者的风格辅助你创作!

### 🎭 风格模拟 (`/mimic`)

从优秀专栏作者中学习课程设计方法:
- **陈航** (Flutter核心技术与实战) - 技术深入、原理讲解、实战结合
- **林晓斌** (MySQL实战45讲) - 问题驱动、深入浅出、生产案例
- **倪朋飞** (Linux性能优化实战) - 实战为主、工具演示、性能分析

### 💡 如何使用

```bash
# 1. 查看可模拟的作者
/mimic list

# 2. 激活某个作者的风格
/mimic activate 陈航

# 3. AI 将以该作者的方式辅助你创作
/outline   # 以陈航的风格设计大纲
/content   # 以陈航的风格创作内容
/review    # 以陈航的标准评估质量

# 4. 退出风格模拟
/mimic deactivate
```

### 🎯 核心价值

- 📚 **学习专业方法**: 从行业标杆学习课程设计思路
- 🎭 **风格指导**: AI 按照大师的方式引导你思考
- 🚀 **快速提升**: 借鉴成熟的教学模式
- ✍️ **保持原创**: 学习方法而非照搬内容

### 📖 详细文档

查看 [风格模拟系统使用指南](docs/MIMIC_GUIDE.md) 了解更多。

---

## 📦 安装

```bash
npm install -g ai-courseify
```

或本地开发:

```bash
git clone https://github.com/wordflowlab/courseify.git
cd courseify
npm install
npm run build
```

---

## 🚀 快速开始

### 1. 初始化课程项目

```bash
# 交互式选择 AI 助手、课程领域、脚本类型
courseify init "我的第一门课"

cd "我的第一门课"
```

**支持13个AI编程助手**:
- Claude Code, Cursor, Gemini CLI
- Windsurf, Roo Code, GitHub Copilot
- Qwen Code, OpenCode, Codex CLI
- Kilo Code, Auggie CLI, CodeBuddy, Amazon Q Developer

### 2. 定义课程规格

```bash
/spec
```

AI 引导你填写:
- 领域: 编程开发/设计创意/商业管理等
- 难度: 入门/进阶/高级
- 时长: 10小时/30课时等
- 受众: 学生/职场新人/专业人士
- 格式: 视频/文档/音频/混合
- 平台: 网易云课堂/B站/Notion等
- 语言: 中文/英文/双语

### 3. 设计课程

**使用 Slash Commands 完成课程设计**:
```bash
/objective    # 1. 设定学习目标
/structure    # 2. 设计课程结构
/outline      # 3. 生成课程大纲(三种模式)
/content      # 4. 创作章节内容
/exercise     # 5. 生成练习题
/script       # 6. 生成视频脚本
/review       # 7. 质量评估
/export       # 8. 导出到平台
```

**三种创作模式** (交互式选择):

```bash
/outline      # AI 会询问你选择模式
# AI: "请选择课程大纲创作模式:
#  1. 引导模式 (Coach) - 逐章引导,深度思考
#  2. 快速模式 (Express) - 快速生成完整大纲
#  3. 混合模式 (Hybrid) - AI 生成框架,你填充内容"
#
# 用户: "1"
# AI: "已选择引导模式,开始设计..."
```

### 4. 导出到平台

```bash
/export       # 交互式选择导出平台
```

AI 会询问你想导出到:
1. **Notion** - 生成 Database 导入格式
2. **飞书** - 生成文档结构和内容
3. **网易云课堂** - 生成 CSV 课程大纲
4. **Excel** - 导出大纲表格
5. **全部** - 一次性导出所有格式

---

## 📚 完整命令列表

### 项目管理 (1个)
- `courseify init <项目名>` - 创建新项目

### 课程设计流程 (9个)
- `/spec` - 定义课程规格
- `/objective` - 设定学习目标
- `/structure` - 设计课程结构
- `/outline` - 生成课程大纲 (三种模式)
- `/content` - 创作章节内容
- `/exercise` - 生成练习题
- `/script` - 生成视频脚本
- `/review` - 质量评估
- `/export` - 导出到多平台

---

## 🏗 架构设计

Courseify 基于三层架构:

```
Markdown指令层 (templates/commands/*.md)
  → 定义AI提示词和工作流程
  → 引导AI如何与用户交互

TypeScript CLI层 (src/cli.ts)
  → 命令行界面
  → 调用Bash脚本

Bash脚本层 (scripts/bash/*.sh)
  → 文件操作和项目管理
  → 输出JSON供AI使用
```

### 为什么这样设计?

1. **灵活性**: Markdown模板可以随时调整,无需重新编译
2. **可维护性**: 三层分离,职责清晰
3. **AI友好**: Markdown格式易于AI理解和执行
4. **跨平台**: 支持Bash和PowerShell

---

## 🎨 创作模式详解

### 引导模式 (Coach)

**理念**: AI是你的课程设计顾问,不是代笔人

**流程**:
1. 逐章引导设计
2. 每章提出 6 个引导问题
3. 逐步检查设计质量
4. 发现问题立即指出
5. 绝不提供具体大纲内容

**适合**:
- 追求100%原创
- 有时间深度思考
- 想提升课程设计能力

### 快速模式 (Express)

**理念**: AI快速生成,你快速迭代

**流程**:
1. 分析规格、目标、结构
2. 直接生成完整大纲
3. 保证逻辑清晰和实用性
4. 用户可修改调整

**适合**:
- 需要快速原型
- 寻找灵感
- 学习课程结构

### 混合模式 (Hybrid)

**理念**: AI搭框架,你填内容

**流程**:
1. AI生成章节框架和知识点
2. 标注[待填充]部分
3. 提供教学建议
4. 用户逐项填充

**适合**:
- 需要结构指引
- 平衡效率与原创
- 初学者学习设计

---

## 📖 使用示例

### 示例 1: 创作编程入门课程

```bash
# 1. 初始化项目
courseify init "Python编程入门"
cd "Python编程入门"

# 2. 定义规格
/spec
# AI引导: 选择"编程开发"、"入门"、"15小时"、"学生"

# 3. 设定目标
/objective
# AI引导: 设定知识点、技能、学习成果

# 4. 设计结构
/structure
# AI引导: 规划 10 章,每章 3-5 课时

# 5. 生成大纲
/outline
# AI询问: "选择模式: 1.引导 2.快速 3.混合"
# 用户: "1"
# AI逐章引导设计...

# 6. 创作内容
/content

# 7. 生成练习题
/exercise

# 8. 生成视频脚本
/script

# 9. 质量评估
/review

# 10. 导出到B站
/export
# AI询问: "选择平台: 1.Notion 2.飞书 3.网易云课堂..."
# 用户: "5"
```

---

## 🛣 开发路线图

**Phase 1: MVP** (已完成 ✅ v0.1.0)
- 核心命令实现
- 三种创作模式
- 基础质量评估
- 多平台导出框架

**Phase 2: 内容增强** (规划中 📋 v0.2.0)
- 更智能的教学建议
- 案例库和模板库
- 互动练习题生成
- 视频脚本优化

**Phase 3: 平台集成** (未来 🔮 v0.3.0)
- Notion/飞书API直接发布
- 网易云课堂批量导入
- B站课程描述生成
- YouTube字幕生成

**Phase 4: AI 增强** (未来 🔮 v0.4.0)
- 课程难度自动分析
- 教学效果预测
- 个性化学习路径生成
- 多语言课程支持

---

## 🤝 贡献

欢迎提交 Issue 和 Pull Request!

---

## 📄 License

MIT License

---

## 🙏 致谢

本项目架构参考了 [Musicify](https://github.com/wordflowlab/musicify) 项目。
