REQUIRED WORK

75% complete.

57 / 76 required criteria

7 workstreams / 1 release target

01 · 8/8Zero dependencyRuntime · package · clean install
100%
02 · 13/13JS APIEntry point · results · sync APIs
100%
03 · 6/11PluginsLifecycle · context · diagnostics
55%
04 · 14/17Node N-APINative async/sync · packaging
82%
05 · 10/11Core CSSTokenizer · parser · AST · maps
91%
06 · 4/7CLI/packageConfig · reporting · migration
57%
07 · 2/9Browser/WASMWorker · browser tests · contracts
22%

Product target

postcss-go is an independent Go-backed implementation of the PostCSS public API and plugin model. Production source, published packages, the CLI, and every runtime backend must work without installing or loading the postcss package.

The target Node.js package will provide a PostCSS-compatible public surface implemented and owned by postcss-go. This includes the entry point and processor, AST classes and constructors, parsing and stringifying helpers, plugin helpers, results, inputs, warnings, errors, source maps, and public TypeScript contracts.

PostCSS remains available only in development fixtures, differential tests, the vendored upstream compatibility suite, and benchmarks. Unsupported behavior must produce a stable diagnostic; it must never silently fall back to PostCSS.

Current status

Required completion criteria

Zero PostCSS production dependency

Public JavaScript API

Plugin execution

Node N-API and synchronous execution

Core CSS pipeline

Node CLI and package boundary

Browser and WASM

Optional performance work

The current compact binary AST transfers the tree once before JavaScript plugin execution and once before final stringification. A persistent opaque-handle AST is an optimization, not a prerequisite for removing PostCSS or exposing the N-API synchronous API.

Validation and release gates

Implementation order