Opting into responsive and state prefixes per build.

How the engine does it#

v2 variants are build-time selections: every chosen variant multiplies output. Selecting hover+md for spacing doubles those sections — a manual trade the JIT later automated.

Example#

js
new CSSGenerator({ variants: ['hover', 'focus', 'md', 'lg'] })

From v2 to v3#

Everything in this article survives the upgrade — the v2 → v3 migration guide keeps the generator API stable while fixing spacing and responsive bugs.

Utilities · Themes · Configuration