规范驱动开发蓝图

一个用于规范驱动、AI赋能的软件开发的蓝图仓库,提供规则、文档、示例功能和工具脚本,适用于TypeScript单体仓库和微服务开发。

  • by mfittko
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 mfittko/sdd-blueprint

使用说明

规范驱动开发(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.