Skip to Content
πŸ“– Guide DocumentsπŸ™‹πŸ»β€β™‚οΈ Introduction

Introduction

ttsc is a TypeScript compiler with a plugin host. It’s a drop-in for tsc built on @typescript/native-preview (TypeScript-Go), and it lets plugins like typia and @ttsc/lint participate in the build pass β€” so what your editor sees, your build sees, your runtime sees, and CI sees.

npm install -D ttsc @typescript/native-preview npx ttsc --noEmit

Same tsconfig.json you already have. Same flags as tsc.

The shape of the project

What
ttscThe compiler. Build, type-check, watch, fix, format.
ttsxTypeScript runner with a real type-check. The typed replacement for tsx / ts-node.
ttscserverLSP host. Plugin diagnostics appear live in your editor.
@ttsc/unpluginSame plugin pass embedded inside Vite, Webpack, Rollup, esbuild, Rspack, Rolldown, Farm, Next, and Bun.
@ttsc/lintThe lint engine. 140 rules. Violations come out as error TSxxxxx β€” same shape as type errors.
typia / nestiaEcosystem plugins. Runtime validators from your types (typia); NestJS controllers + SDK (nestia).

Reading paths

  • β€œI just want to use it.” β†’ Why ttsc, then Setup.
  • β€œI want lint and format as part of my build.” β†’ @ttsc/lint. This section is large; the chapter index is the right starting point.
  • β€œI want to use typia, nestia, or another ecosystem plugin.” β†’ TTSC Β· Using plugins for the wiring; TTSC Β· typia for the canonical example.
  • β€œI want a CLI reference.” β†’ TTSC Β· ttsc CLI reference.
  • β€œI want to write my own plugin.” β†’ Plugin Development. This is the audience-walled section for plugin authors.
  • β€œSomething broke.” β†’ Troubleshooting or FAQ.

Try it without installing

β†’ Playground

Status

v1 and still moving. Treat ttsc as a build-time dependency in your package.json; do not declare it as a peer dependency yet.

Last updated on