Roadmap
The project is evolving toward a turnkey companion pipeline for DTCG tokens: install one package, point it at tokens.json, get computed $values back. The roadmap below organizes that evolution by released version so consumers can plan adoption.
Phase 0 — Specification ✅
- Publish project brief
- Publish
.module.scssdefspec - Publish
org.dtcg-formulasextension spec draft - Publish minimal function registry contract
- Example
.module.scssdeffiles (radius, math)
Phase 1 — Core Implementation ✅
- [x] Implement
.module.scssdefparser (#1) - [x] Implement function registry (#2)
- [x] Ship built-in clamp definition (#4)
- [x] Ship built-in mix definition (#5)
- [x] Ship Leonardo color definition + docs (#8)
- [x] Ship color-names, modular-scale, shade/tint, fluid-size, material-shadow, composite, optimal-foreground, outline-radius definitions + docs
0.1.0 — Public-ready foundation ✅ (released)
The metadata surface is installable, versioned, and documented. A consumer can parse, register, and document formulas today; compute comes in 0.2.0.
- [x] Publish
@dtcg-formulas/parser,@dtcg-formulas/registry,@dtcg-formulas/specto npm - [x] Dual ESM + CJS builds via tsup, typed exports
- [x] Release plumbing: Changesets, CI matrix (Node 20/22), release workflow
- [x] Lint/format via Biome
- [x] Education: concepts, authoring-a-formula, integrations, troubleshooting guides
- [x] Architecture doc: full public-readiness analysis and phased rollout
- [x]
CONTRIBUTING.md,SECURITY.md,CODE_OF_CONDUCT.md
0.2.0 — Compute (current track)
The compiler lands. End-to-end DX becomes real for any DTCG consumer.
- [ ]
@dtcg-formulas/resolver— pure, tool-agnostic core that walks a DTCG token tree, resolves{path.to.token}references, invokes function implementations, writes computed$valueback, preserves$extensions.org.dtcg-formulasprovenance - [ ]
@dtcg-formulas/builtins— executable JS implementations for math built-ins (round, clamp, min, max, mix, modular-scale, shade/tint, fluid-size) - [ ]
@dtcg-formulas/cli— thin CLI over the resolver:compile,lint(preflight formula syntax + registry validation),check(dry-run with full diagnostic report) - [ ] Diagnostics-first error model: codes, spans, hints, docs links
- [ ] JSON Schema for the
org.dtcg-formulasextension, published from@dtcg-formulas/spec
0.3.0 — Integrations and contrast adapters
- [ ] Executable adapter packages for color/contrast:
@dtcg-formulas/adapter-leonardo,@dtcg-formulas/adapter-color-names,@dtcg-formulas/adapter-composite,@dtcg-formulas/adapter-optimal-foreground,@dtcg-formulas/adapter-material-shadow - [ ]
@dtcg-formulas/style-dictionary-plugin— thin wrapper over the resolver (transitive preprocessor) - [ ] Docs generator from
.module.scssdefmetadata (the@dtcg-formulas/docspackage)
0.4.0+ — Expansion
- [ ] Remaining adapter packages (spacing scales, typography, motion)
- [ ]
@dtcg-formulas/terrazzo-plugin - [ ] Editor LSP backed by the published JSON Schema + diagnostic codes
- [ ] Revisit generator/recipe model for one-to-many derivation
- [ ] Structured extension metadata (
arguments,dependencies) when warranted - [ ] Align with DTCG token operations developments
- [ ] Consider formal expression grammar
See Architecture / Public Readiness for the full analysis that informs this roadmap.