A curated list of tools, frameworks, and resources for Specification Driven Development (SDD) - the practice of creating software by starting with specifications and using them to drive the entire development process.
Specification Driven Development emphasizes creating clear, executable specifications first, then using these specifications to generate code, tests, documentation, and other artifacts. This approach ensures consistency, reduces bugs, and improves collaboration between teams.
- Popular Frameworks
- Theory and Methodologies
- Agentic Programming
- MCP Servers
- IDE Support
- Blog Posts
- Community
- Contract Testing
- API-First Tools
- Contributing
- GitHub Spec-Kit - A Toolkit to help you get started with Spec-Driven Development.
- SpecPulse - Specification-Driven Development (SDD) Framework for Python.
- Falcon Heavy - Framework for building app backends and microservices by specification-first API design approach based on OpenAPI Specification 3.
- Swagger Core - Examples and server integrations for generating the Swagger API Specification, which enables easy access to your REST API.
- Swagger TypeScript API - Generate the API Client for Fetch or Axios from an OpenAPI Specification.
- OpenAPI TypeScript Codegen - NodeJS library that generates TypeScript or JavaScript clients based on the OpenAPI specification.
- oapi-codegen - Generate Go client and server boilerplate from OpenAPI 3 specifications.
- Concordion - Open source framework for Java that lets you turn a plain English description of a requirement into an automated test.
- JGiven - Behavior-Driven Development in plain Java.
- Lettuce - Behavior-driven-development tool for Python, inspired by Cucumber for Ruby.
- Mamba - The definitive testing tool for Python. Born under the banner of Behavior Driven Development (BDD).
- Specification by Example - A collaborative approach to defining requirements and business-oriented functional tests
- Contract-Driven Development - Development approach where API contracts are defined first and used to drive implementation
- Design-First API Development - Creating API specifications before implementation to ensure consistent design
- Domain-Driven Design (DDD) - Software design approach focusing on modeling software to match a domain according to input from domain experts
- Shriek-fx - .NET Core framework following domain-driven design (DDD) specifications with CQRS architecture.
- Archived Specmatic Documentation - Turn your contracts into executable specifications. Contract Driven Development approach.
- AgentScope - Agent-Oriented Programming for Building LLM Applications.
- MetaGPT - The Multi-Agent Framework: First AI Software Company, Towards Natural Language Programming.
- Microsoft AutoGen - A programming framework for agentic AI.
- Langroid - Harness LLMs with Multi-Agent Programming.
- Serena - A powerful coding agent toolkit providing semantic retrieval and editing capabilities (MCP server & other integrations).
- LLM4S - Agentic and LLM Programming in Scala.
- DafnckMachine - AGF 2.0 - Agentic Coding Framework powered by Pheromind – a revolutionary system designed to orchestrate fully autonomous, specification-driven software development.
- Awesome MCP Servers - A curated list of Model Context Protocol (MCP) servers.
- Awesome MCP Servers (Alternative) - Another curated list of Model Context Protocol servers with extensive collection.
- MCP Registry - A community driven registry service for Model Context Protocol (MCP) servers.
- Context7 - Up-to-date code documentation for LLMs and AI code editors
- Excel MCP Server - A Model Context Protocol server for Excel file manipulation.
- Qdrant MCP Server - An official Qdrant Model Context Protocol (MCP) server implementation.
- Exa MCP Server - Exa Web Search API MCP (Model Context Protocol) server.
- Markdownify MCP - A Model Context Protocol server for converting almost anything to Markdown.
- ArXiv MCP Server - A Model Context Protocol server for searching and analyzing arXiv papers.
- Microsoft MCP - Catalog of official Microsoft MCP (Model Context Protocol) server implementations for AI-powered data access and tool integration.
- Kubernetes MCP Server - Model Context Protocol (MCP) server for Kubernetes and OpenShift.
- Swagger Viewer - Preview Swagger/OpenAPI specifications in VSCode
- OpenAPI (Swagger) Editor - Edit OpenAPI specifications with validation and preview
- REST Client - Send HTTP requests and view responses directly in VSCode
- OpenAPI Specifications - Built-in support for OpenAPI specification editing and validation
- HTTP Client - Built-in HTTP client for testing APIs defined in specifications
- Stoplight Studio - Visual OpenAPI specification editor
- Insomnia Designer - Collaborative API design platform
- Postman - API development environment with specification support
- API-First Development: Benefits and Best Practices
- Contract-Driven Development: A Guide
- Specification by Example: An Introduction
- Building Microservices with Contract Testing
- Domain-Driven Design and Specification Patterns
- Behavior-Driven Development in Practice
- OpenAPI Community - Official OpenAPI specification community
- Pact Foundation - Consumer-driven contract testing community
- BDD Community - Behavior-driven development discussions
- API World - Annual API development conference
- OpenAPI Initiative Meetups - Local meetups for OpenAPI enthusiasts
- BDD Exchange - Conference focused on behavior-driven development
- Pact JVM - JVM version of Pact for consumer driven contract testing.
- Pact Ruby - Ruby implementation providing a mock service and DSL for consumer-driven contract testing.
- Pact .NET - .NET version of Pact for consumer driven contract testing.
- Pact Python - Python version of Pact enabling consumer driven contract testing.
- Pact PHP - PHP version of Pact for consumer driven contract testing.
- Awesome Contract Testing - Awesome resources for Consumer-Driven Contract Testing.
- Panacloud CLI - Uses the design-first approach for developing APIs, generating Modern Multi-Tenant Serverless Cloud API infrastructure.
- API Codeflow Node.js - Build and evolve a REST API design-first with OpenAPI-Generator and Node.js.
- Swagger JSDoc - Generates swagger/openapi specification based on jsDoc comments and YAML files.
- ApiSpec - A pluggable API specification generator supporting OpenAPI Specification.
- OpenAPI Diff - Utility for comparing two OpenAPI specifications.
Contributions are welcome! Please read the contribution guidelines first.
- Fork this repository
- Add your awesome resource to the appropriate section
- Ensure the resource follows the format:
**[Name](link)** - Description. 
- Submit a pull request
- Resource must be related to specification-driven development
- Active maintenance and community support
- Clear documentation and examples
- Open source preferred (but not required for learning resources)