Guide/Project status

Project status

Parsing, AST editing, and printing are available in the JavaScript packages. Other stages of the compiler have different levels of implementation and JavaScript exposure.

The Roadmap tracks upcoming work. Conformance results report how the current implementation performs against upstream test suites.

Feature status

The JavaScript column covers exported package APIs; Rust covers the native compiler components.

  • Implemented: usable for the scope listed in the row.
  • Partial: a working subset with missing functionality.
  • Not started: no implementation in that interface yet.

These labels describe feature availability, not conformance pass rates or API stability.

FeatureJavaScriptRustScope and limitations
ParsingImplementedImplementedJavaScript, TypeScript, JSX, TSX, and declaration files.
AST traversal and editingImplementedImplementedStructural traversal, visitor hooks, and node edits.
Code generationImplementedImplementedReadable or compact output, ASCII-only output, and inline-script escaping.
Parser diagnostics and commentsImplementedImplementedSyntax recovery, diagnostic spans, and comment collection.
Semantic early errorsImplementedImplementedEnable semanticErrors in the JavaScript parser options.
Scopes, symbols, and referencesNot startedImplementedThe full semantic model is separate from parser early-error diagnostics.
Syntax transformationsNot startedPartialTypeScript lowering and class static blocks; no general browser-target compilation pipeline.
MinificationNot startedPartialSelected compression passes. Name mangling is not implemented; the printer's minify option only controls formatting.
Type strippingNot startedImplementedThe erasableSyntaxOnly subset, preserving UTF-16 length and line layout.
Isolated declarationsNot startedImplementedDeclaration-surface generation, without full TypeScript type checking.
Comment and source-map emissionNot startedImplementedJavaScript printSync currently returns code only.
SWC configuration compatibilityNot startedNot startedSelected .swcrc options are planned.