---
title: Compiler
description: A TypeScript compiler written in TypeScript and compiled to a native executable.
url: "https://tsc-ts.dev/compiler"
docs_index: /llms.txt
lastUpdated: 2026-10-17
---

> For an index of all documentation, see [/llms.txt](/llms.txt).

tsc-ts is a port of the TypeScript-Go 7.0.2 compiler to TypeScript. [scriptc](https://scriptc.dev) compiles the implementation to a native executable. The npm package selects the executable for your operating system and architecture.

## Check a project

```sh
npm install -D tsc-ts
npx tsc-ts -p tsconfig.json
```

tsc-ts reads `tsconfig.json`, checks the program, and emits files according to the project's options. Use `--noEmit` to check without writing output.

See [getting started](/compiler/getting-started) for installation and platform packages, and [the command line](/compiler/command-line) for project selection, watch mode, and builds.

## Compatibility

tsc-ts targets TypeScript-Go 7.0.2. The [compatibility guide](/compiler/compatibility) describes comparison coverage and known differences.

## API server

`tsc-ts --api` exposes the TypeScript 7 compiler API over stdin and stdout. It is intended for tools that already use TypeScript 7's `tsc --api` protocol. See [the API server](/compiler/api) for supported methods and limitations.

## Source layout

| Package           | Purpose                                                  |
| ----------------- | -------------------------------------------------------- |
| `packages/tsc-ts` | Compiler, command line, and API server.                  |
| `packages/tsgo`   | Reference builds of tsgo that the tests compare against. |

The [repository README](https://github.com/vercel-labs/tsc-ts#readme) documents builds and tests. The compiler is licensed under [Apache-2.0](https://github.com/vercel-labs/tsc-ts/blob/main/LICENSE); upstream notices are in [THIRD_PARTY_NOTICES.md](https://github.com/vercel-labs/tsc-ts/blob/main/THIRD_PARTY_NOTICES.md).

---

For a semantic overview of all documentation, see [/sitemap.md](/sitemap.md)

For an index of all available documentation, see [/llms.txt](/llms.txt)