Changelog

What changed in each NibCSS release.

1 min readv1

1.1.1#

Patch release across all packages; no API changes.

1.1.0#

No flash of unstyled markup

  • The CDN runtime starts the moment it executes instead of waiting for DOMContentLoaded, and applies classes at the microtask checkpoint — styled before the first paint when placed in <head>.
  • rewrite: true now handles real-world JSX (nested braces, template literals, arrow functions in props).

Composable recipes and a base reset

  • A recipe can include other recipes; outer modifiers flow through every level; circular references are reported once.
  • A preflight reset ships with the engine inside @layer nib-preflight (preflight: false to drop it).

Diagnostics you can act on

  • Invalid values are caught at build time for properties with finite value sets (position, display, opacity, …).
  • Messages expand the shorthand, list values that would work, and suggest corrections.
  • Seven languages (uz, en, ru, tr, es, de, zh) with language and messages.
  • Every build diagnostic points at a file and line; the dev overlay shows build-time problems too, updates over HMR, and clears fixed ones.
  • A missing config or an empty config is always reported.

Tooling

  • nib init and the plugin's first run write the same fully documented nibcss.config.ts.
  • @nibcss/config is a real, typed package — no paths or declare module needed.
  • Config edits apply without restarting in Vite; nib watch follows the config too.
  • The config file and node_modules are no longer scanned as markup.

1.0.0#

First stable release: the engine, runtime, build plugin, CLI, devtools and adapters for React, Vue, Angular, Svelte, Next.js and Nuxt.

Next steps#