Skip to content

Compatibility

@typra/emitter currently supports @typespec/compiler and @typespec/json-schema 1.10.0.

Unsupported TypeSpec versions report an emitter diagnostic unless allow-unsupported-typespec-version: true is set intentionally.

Target support is evidence-driven. The fixture suite validates generated compile/test surfaces across TypeScript, Python, C#, Go, Java, Rust, Swift, Markdown, and JSON AST generation. It also validates opt-in native-interop variants for TypeScript/Zod, Python/Pydantic, Java/Jackson, Rust/serde, and Swift/Codable.

TargetCurrent confidence note
TypeScriptBest fit when JSON/YAML helper behavior matters; use native-serialization: "zod" for Zod validation artifacts.
PythonBest fit when JSON/YAML helper behavior matters; use native-serialization: "pydantic" for Pydantic v2 models.
GoBest fit when JSON/YAML helper behavior matters.
C#JSON and YAML model helper surfaces; confirm namespace conventions before publishing generated output.
JavaJSON/YAML model helper surfaces and optional Jackson interop; confirm package conventions before publishing generated output.
RustChoose enum-parsing deliberately; default behavior is case-sensitive. Use explicit serde mode when consumers need serde traits.
SwiftSwiftPM package with JSON/YAML helpers and optional explicit Codable; build and test require a Swift toolchain (gated by CI_SWIFT_REQUIRED).
MarkdownGenerated reference output; review before publishing product docs.
JSON ASTTooling and review artifact, not a runtime API.

The fixture source is the compact reference for supported shapes:

packages\typra-emitter\fixtures\tspconfig.yaml
packages\typra-emitter\fixtures\integration\main.tsp
packages\typra-emitter\fixtures\features\<feature>\main.tsp
packages\typra-emitter\fixtures\runtimes\<runtime>\<case>\main.tsp