规范驱动开发(SDD)蓝图
该存储库为规范驱动、人工智能驱动的软件开发提供了一个蓝图存储库。它正在演变成一种自我控制 ained包可以复制到任何带有微服务和前端客户端的TypeScript单仓库中。目前的下降包括 这是一个完全有效的食谱功能,演示了如何将Slidev剧本应用于实际代码,同时为 附加服务和用户界面。
里面是什么
- 规则和惯例 -人类和人工智能代理的编码、提交和文档标准。
- 文档中心 –端到端指南(
docs/)涵盖开发工作流程、GitHub流程、故障排除和幻灯片
对齐。
- 可执行示例功能 –具有API处理程序、持久性适配器和说明规范驱动的测试的配方服务
流动。
- 质量门 –严格的linting、具有覆盖阈值的单元/集成测试和Playwright E2E练习。
- 工具和脚本 –运行用于开发服务器、linting、测试、覆盖和构建的npm脚本。
将此作为新SDD项目的起点或最佳实践的参考。
开发状态
✅ 独立存储库:这是一个独立的蓝图,用于规范驱动、人工智能驱动的软件开发。已准备好用作新项目的模板。 请参阅GitHub版本历史和路线图。
输出目标
该蓝图提供:
- Monrepo友好的服务模块,说明如何扩展到配方切片之外。
- 通过共享合约和适配器连接其他微服务的蓝图。
- 与服务规范保持同步的前端集成模式(UI、基于故事的或API客户端)。
- 交钥匙工具——lint/test/build/CI脚本、MCP工作流、变更日志规程——因此不存在父仓库假设。
蓝图计划的每一次后续行动都应该使我们更接近这一结果。
快速链接
docs/DEVELOPMENT.md–日常工作流程、提交/PR期望和变更日志指南。docs/GITHUB_WORKFLOW.md–MCP首次GitHub和审查流程演练。docs/TROUBLESHOOTING.md–CI、依赖关系和本地环境问题的运行手册。docs/spec-templates/–发布功能、错误、重构和文档更新的模板。docs/SLIDEV_ALIGNMENT.md–将Slidev演示文稿主题映射到可操作的蓝图任务。docs/EXECUTION_CHECKLIST.md–与蓝图计划保持一致的分阶段跟踪器。docs/TESTING.md–覆盖阈值、命令面板和模拟指南。QUICKSTART.md–复制粘贴启动新仓库的设置说明。
示例功能概述
示例实施以展示SDD方法的配方目录为中心:
src/lib/recipes/域服务、验证模式、slug助手和存储库抽象。src/api/recipes/route.ts–API处理程序,用于镜像具有明确错误映射的Next.js样式路由导出。src/server.ts–轻量级HTTP服务器npm run dev用于手动戳戳。src/data/recipes.ts–种子数据演示了如何在不影响生产服务的情况下为存储库补水。tests/unit–Vitest套件验证服务逻辑、slug生成和冲突处理。tests/integration–API级测试执行框架路由将公开的相同处理程序。tests/e2e–剧作家流程证明了以人为中心的结果(浏览和提交食谱),而没有一个完整的UI框架。
数据层底漆
蓝图故意附带 内存存储库 (createInMemoryRecipeRepository)而不是数据库驱动程序。它演示了Slidev deck中支持的适配器模式:
- 从无依赖实现开始,这样就可以立即编写规范和测试。
- 通过服务构造函数注入存储库,保持传输和域代码不变。
- 稍后通过实现相同的方法交换持久适配器(SQLite、Postgres等)
RecipeRepository合约和更新组成根。
看 docs/ARCHITECTURE.md 查看详细的演练和更换清单。
脚本
npm install # install dependencies
npm run dev # start the lightweight recipe API server
npm run lint # lint all TypeScript files
npm run test # run Vitest in CI mode
npm run test:watch # interactive test watch mode
npm run test:unit # unit tests only
npm run test:integration # integration tests only
npm run test:e2e # Playwright browser flows
npm run test:coverage # enforce coverage thresholds
npm run build # emit compiled TypeScript to ./dist后续步骤
看 docs/plan/BLUEPRINT.md 对于路线图和 docs/EXECUTION_CHECKLIST.md 用于在我们经历阶段时进行任务级跟踪 2–5.
