microsoft/typespec

TypeSpec is a language for defining cloud service APIs and shapes that can generate multiple API description formats, client code, and documentation from a...

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 27 minutes ago
Added to GitGenius on September 11th, 2026
Created on June 30th, 2021
Open Issues & Pull Requests: 1,066 (+0)
GitHub issues: Enabled
Number of forks: 392
Total Stargazers: 5,852 (+0)
Total Subscribers: 43 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 8.4 hours
Mean response time: 33.2 days
90th percentile: 66.0 days
Tracked items: 2,919

How this project is maintained

Around half of the issues opened in the past year never receive a reply. 46% of open issues come from outside the core team, a mix of external reports and the maintainers' own roadmap. Work labelled "emitter:client:python" is answered fastest, typically in under an hour, while "triaged:core" waits about 4 days. 56% of tracked open issues have had no activity in three months. Only 7% of issues opened in the past year have been closed.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 853
New in 7 days: 26
Closed in 7 days: 24
Avg open age: 465 days
Stale 30+ days: 758
Stale 90+ days: 687

Recent activity

Opened in 7 days: 23
Closed in 7 days: 24
Comments in 7 days: 11
Events in 7 days: 109

Top labels

  • emitter:client:csharp (963)
  • triaged:core (961)
  • bug (752)
  • feature (441)
  • compiler:core (363)
  • needs-area (349)
  • emitter:client:python (338)
  • design:needed (239)

Detailed Description

TypeSpec is a language for defining cloud service APIs and shapes that can generate multiple API description formats, client code, and documentation from a single source of truth.

The tool addresses the problem of maintaining consistency across different API protocols and formats by providing a unified language with extensible primitives that work across REST, OpenAPI, gRPC, and other protocols. TypeSpec compiles API definitions into various outputs—OpenAPI documents, client libraries, service code, and documentation—while allowing teams to define reusable patterns and guardrails through libraries and a rich linter framework. This approach keeps API specifications synchronized with generated artifacts without manual duplication.

TypeSpec suits organizations building cloud services that need to support multiple API formats or client languages from a single definition. It is particularly valuable for teams wanting to enforce API design patterns and best practices across projects through reusable libraries and linting rules. The tool works well in scenarios where you need to generate OpenAPI 3.0 specifications, client SDKs in various languages, or service implementations, and where maintaining a single authoritative API definition is a priority.

The project receives issues from both core maintainers and external users, indicating real adoption beyond the development team without an overwhelming support burden. Maintainers typically respond to new issues and pull requests within a day. Work in the issue tracker centers on the C# client emitter, core language features, and bug fixes.