让 AI 帮你写需求文档,然后让 AI 帮你实现项目!
一个基于 PyQt5 的桌面应用,帮助编程新手快速生成规范的软件需求文档。
作为编程新手,我发现了一个高效的开发流程:
- 用这个工具:输入项目想法,让 AI 帮我生成完整、规范的需求文档
- 拿着需求文档:直接给 AI 大模型(如 ChatGPT、Claude、DeepSeek 等)
- AI 帮你写代码:大模型根据清晰的需求文档,帮你完成项目开发
有了清晰的需求文档,AI 才能更准确地帮你写代码!
- 📝 AI 推荐技术栈 - 输入项目描述,AI 自动推荐最适合的前后端技术方案
- 📋 生成详细需求 - AI 分析并生成功能点清单,可手动修改补充
- 📄 完整需求文档 - 一键生成结构化的 Markdown 需求文档
- 👀 实时预览 - 左侧编辑,右侧实时预览格式化效果
- 💾 历史记录 - 自动保存所有生成的文档,随时查看和导出
- 🎨 深色/浅色主题 - 支持切换界面主题
- 📤 一键导出 - 导出 Markdown 文件或复制到剪贴板
- Python 3.8 或更高版本(建议 3.8-3.11)
- 操作系统:Windows 10/11
在项目根目录下打开命令行,执行:
pip install -r requirements.txt💡 如果你有多个 Python 版本,可以用
python -m pip install -r requirements.txt
本项目使用 DeepSeek API(兼容 OpenAI 接口格式)。你需要:
- 前往 DeepSeek 开放平台 注册账号
- 创建 API Key
- 运行程序后,在菜单栏 设置 → API 配置 中填入你的 API Key
💡 提示:DeepSeek API 价格便宜,新用户通常有免费额度。你也可以修改代码使用其他兼容 OpenAI 格式的 API。
在项目根目录执行:
python -m src.main或者:
python src/main.py运行成功后会弹出图形界面!
-
填写项目信息
- 输入项目名称(如:"在线待办事项管理系统")
- 描述项目功能(如:"用户可以添加、编辑、删除待办事项,支持分类和提醒")
- 选择界面风格(简约、现代、商务等)
-
获取 AI 推荐
- 点击"获取 AI 推荐"按钮
- AI 会分析你的项目,推荐合适的技术栈(前端、后端、数据库等)
-
生成详细需求
- 点击"生成详细需求列表"
- AI 会列出具体的功能点,你可以编辑和补充
-
生成完整文档
- 点击"生成需求文档"
- 右侧会显示完整的 Markdown 格式需求文档,包含:
- 项目概述
- 功能需求
- 技术架构
- 接口设计
- 数据库设计
- 等等...
-
导出使用
- 点击"导出文档"保存为 .md 文件
- 或点击"复制到剪贴板"直接粘贴给 AI 大模型
需求文档生成器/
├── src/
│ ├── main.py # 程序入口
│ ├── core/ # 核心功能
│ │ ├── ai_client.py # AI 接口调用
│ │ ├── config_manager.py # 配置管理
│ │ └── document_generator.py # 文档生成逻辑
│ ├── ui/ # 用户界面
│ │ ├── main_window.py # 主窗口
│ │ ├── left_panel.py # 左侧输入面板
│ │ ├── right_panel.py # 右侧预览面板
│ │ ├── menu_bar.py # 菜单栏
│ │ └── history_dialog.py # 历史记录对话框
│ ├── data/ # 数据存储
│ │ └── database.py # SQLite 数据库封装
│ ├── resources/ # 资源文件
│ │ ├── icons/ # 图标
│ │ └── styles/ # 样式表(浅色/深色主题)
│ └── utils/ # 工具函数
│ └── helpers.py
├── requirements.txt # Python 依赖包
├── setup.py # 安装配置
└── README.md # 项目说明(本文件)
- PyQt5 - 图形界面框架
- OpenAI Python SDK - 调用 AI API(连接 DeepSeek)
- SQLite - 本地数据存储
- Markdown - 文档格式处理
- API Key 安全:永远不要把 API Key 上传到 GitHub!本项目会将 Key 保存在本地数据库中
- 网络连接:需要联网才能调用 AI API
- 费用说明:调用 API 可能产生费用,请在 DeepSeek 平台查看你的用量
这是我作为新手开发的第一个项目,如果你:
- 发现了 Bug
- 有功能建议
- 想改进代码
欢迎提交 Issue 或 Pull Request!
如有问题,欢迎在 GitHub Issues 中提问。
⭐ 如果这个项目对你有帮助,欢迎点个 Star!