The typescript-go repository is a staging environment for developing a native port of TypeScript from JavaScript to Go. This project represents a significant undertaking to reimplement the TypeScript compiler and toolchain in Go, with the long-term goal of eventually merging this work into the main microsoft/typescript repository. The project is classified across multiple domains including TypeScript, Go, code generation, type bindings, interoperability, language integration, API generation, and cross-language tooling.
A preview build of this native TypeScript implementation is available on npm under the package name @typescript/native-preview, with the command-line tool named tsc for TypeScript 7.0 RC and later versions. The project also provides a preview VS Code extension available on the VS Code marketplace, allowing developers to test the native implementation within their editor by configuring appropriate settings.
The repository shows substantial development activity with 1463 tracked issues and pull requests. Response latency metrics indicate a median response time of 0.2 hours and a mean response time of 39.8 hours, reflecting active engagement from the maintainers. The most frequently occurring issue labels are Crash with 278 instances, Domain: Editor with 231 instances, and general bug reports with 180 instances. The primary contributors driving this project are jakebailey with 2325 recorded events, ahejlsberg with 815 events, and RyanCavanaugh with 704 events.
The implementation status varies across different TypeScript features. Core functionality including program creation, parsing and scanning, command-line and tsconfig.json parsing, type resolution, type checking, JavaScript-specific inference, JSDoc support, JSX, declaration emit, JavaScript output emission, build mode with project references, and incremental builds are marked as complete. Watch mode is currently in prototype status, supporting file watching and rebuilding but lacking incremental rechecking and optimization. The language service implementation via LSP is actively in progress with nearly all features implemented. The public API surface is not yet ready for use.
The repository maintains overlapping contributors with microsoft/vscode and microsoft/typescript, indicating close coordination with the broader TypeScript ecosystem. This connection underscores the project's integration into Microsoft's larger development tooling infrastructure. The project explicitly welcomes contributions and maintains Microsoft's standard open source code of conduct and contributor license agreement requirements.
The README emphasizes that this remains a work in progress without full feature parity with TypeScript 6.0, and users are advised to review the feature status table carefully before reporting issues. The project documentation includes a CHANGES.md file documenting intentional deviations from TypeScript 6.0 behavior. Given the staging nature of this repository and its planned eventual merger into the main TypeScript project, the issue tracker and repository are expected to eventually close once the native port reaches production readiness.