Skip to content

Repository files navigation

TypeScript 7 WASM

npm version npm downloads Release

Unofficial WebAssembly (WASM) distribution of TypeScript 7, automatically built via GitHub Actions. Package versions and npm dist-tags mirror the official typescript package (>= 7).

This is a fork of the original sxzz/tsgo-wasm repository.

Use this version if your operating system or architecture is not supported by the native build, or if you need to run it in browsers.

Download the latest binaries from the Releases page.

Read more about the TypeScript 7 here!

Warning

This is NOT an official distribution from the TypeScript official team, but all binaries are built directly from the official source code without any modifications via GitHub Actions.

Usage

npm install @webassembly/typescript

npx tsc -v
# Version 7.0.2

🧯 Safety

The binaries are built through GitHub Actions using source code checked out on demand directly from the official microsoft/typescript-go repository (at the typescript/v<version> tag), without any modifications. The exact upstream commit each release was built from is recorded in buildInfo.commit inside the published package.json and in the GitHub release notes. The complete build workflow is transparent and open-source, available for inspection here.

We understand security concerns regarding unofficial binaries. For additional peace of mind, you're welcome to fork this repository and execute the build workflow yourself.

🛠️ Development

The entire release pipeline lives in scripts/release.ts. It resolves the target typescript versions (>= 7), skips any already published to @webassembly/typescript, and for each missing version clones typescript-go at the matching tag, builds the WASM binary with GoReleaser, sets the package version + buildInfo, publishes to npm, and purges the jsDelivr cache.

Requirements: Go, Node.js, pnpm and GoReleaser. Provide an NPM_TOKEN (consumed by .npmrc) to publish.

pnpm i

# Dry run: build with `goreleaser --snapshot`, no tagging/publishing.
pnpm release:dry

# Mirror the current typescript dist-tags (latest/rc/next) that are missing.
pnpm release

# Release one explicit version.
pnpm release --version 7.0.2

License

The TypeScript project and this project both are licensed under the Apache License 2.0.

About

Polyfill for typescript package

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages