TypeSpec
Language for defining cloud service APIs and shapes
...TypeSpec is excellent for generating many different API description formats, client and service codes, documentation, and many other assets. All this while keeping your TypeSpec definition as a single source of truth. Using TypeSpec, you can create reusable patterns for all aspects of an API and package those reusable patterns into libraries. These patterns establish "guardrails" for API designers and make it easier to follow best practices than to deviate from them. TypeSpec also has a rich linter framework with the ability to flag anti-patterns as well as an emitter framework that lets you control the output to ensure it follows the patterns you want.