Project
EvoSpec
Manage API specs that need to keep moving.
A framework and CLI for versioned API specification workflows, aimed at evolving TypeSpec-based contracts without losing the path between versions.
Highlights
Why it exists
- CLI workflow for initializing and managing EvoSpec API projects
- Versioned API structure with a latest workspace and explicit versions
- TypeSpec-oriented evolution model with migration concepts
- Built for API changes that need continuity rather than clean-sheet rewrites
Overview
Current shape
EvoSpec is HamSpec’s take on API evolution as an explicit workflow instead of an afterthought.
The repository currently frames EvoSpec as a way to manage versioned API specification projects, especially around TypeSpec. It starts with an evospec init flow, sets up a versioned directory structure, and treats change between versions as something that should be modelled rather than ignored.
The idea is straightforward: when an API changes, the path from one version to the next matters. EvoSpec is aimed at preserving that path through migration-oriented tooling, generated scaffolding, and a workflow that distinguishes the latest spec from published versions.
This is the systems side of HamSpec: slower-moving, more structural, and concerned with software that has to keep evolving without breaking its users.