How it works

This documentation is still being finalized and may change as the product evolves.

TokenIgnite is a live validation layer between Figma Variables and your running frontend. Its purpose is simple: keep design tokens flowing into the real UI while you decide whether the result is good enough to export.

The loop

  1. Designer opens the TokenIgnite Figma plugin, signs in, and keeps it streaming.
  2. Plugin publishes variable updates onto TokenIgnite’s live sync stream.
  3. Developer connects the SDK in a local or closed-staging environment.
  4. The runtime injects native CSS custom properties into a <style> tag (context-scoped via data-ti-context).
  5. You see the change in the real UI — including while AI agents edit layout — then export CSS only after you approve it.

Live token delivery is stream-direct: the plugin writes updates; the SDK applies them in the browser. Bootstrap and auth use the server; the live token path does not go through HTTP request/response for each tweak.

TokenIgnite does not rewrite your JSX/TSX. Components should already use CSS variables (for example color: var(--color-brand-accent)). Predefined Figma WEB code syntax has absolute priority when naming those variables.

Two ways developers connect

PathWhenBootstrap
A — LocalDay-to-day developmentinitTokenIgnite() + active tokenignite run <name>
B — Closed stagingAccess-controlled, production-built stagingrunTokenIgnite(target, config) — no terminal run required

Path A stays behind a development-only guard so public production builds stay clean. Path B must not use that guard — closed staging is production-like (NODE_ENV is usually "production"); keep it off public production via deploy and access control.

Details and code: Developer Docs.

Who does what

RoleResponsibility
DesignerInstall plugin → sign in → keep streaming → copy the TokenIgnite file id → send it to developers
Developernpm i -D tokenignitenpx tokenignite init → set file id → bootstrap Path A or B → validate in the browser → export when ready

Developers do not need a TokenIgnite account to consume a live stream. They need the file id and an active plugin stream.

Glossary

TermMeaning
TokenIgnite file idId shown in the plugin (often tokenignite-…). Not a Figma file key. Goes in files[].id.
Continuous InjectionStreaming Figma variable changes into an already running browser without rebuilding for each tweak.
Run modeAn active live session for a configured stream (tokenignite run <name> and/or runTokenIgnite).
ContextA collectionName:modeName value on data-ti-context (normalized, e.g. color-modes:dark-mode). Multiple values allowed, space-separated.
ModeThe mode half of a context (collectionName:modeName).
Validated exportWriting native CSS custom properties to disk after runtime approval — not on every live tweak.
Zero footprintPath A: development dependency + development-only init. Path B: keep TokenIgnite off public production via deploy/access control — not via a NODE_ENV===development gate.

Public Beta limits

  • Hard gate: up to 5000 Figma variables per file (plugin-enforced). Soft recommendation for readable CSS: closer to 500.
  • Scope: local development and closed staging.