inventive-ui 0.0.10 → 0.0.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -34,7 +34,7 @@ Inventive UI builds utility CSS at **dev/build time** (Node), then injects it in
34
34
  | Webpack | `plugins: [...inventiveUiWebpack()]` + `html-webpack-plugin` in the app |
35
35
  | Next.js | `export default withIUI({ ... })` + root `<IUIRegistry>` |
36
36
 
37
- `iui.config.ts` can include an optional compile-first `build` block. **`scanDirs` / `scanPackages` are not required** — Framework defaults to `["src", ".iui"]` and `["@inventive-ui/components"]`.
37
+ `theme.config.ts` can include an optional compile-first `build` block. **`scanDirs` / `scanPackages` are not required** — Framework defaults to `["src", ".iui"]` and `["@inventive-ui/components"]`.
38
38
 
39
39
  Documented init toggles (`packageSafelist`, `includeShadeMatrix`, theme/palette/arbitrary flags, etc.) are listed in Framework `docs/01-compile-first-guide.md` for the docs site.
40
40
 
@@ -51,7 +51,7 @@ Documented init toggles (`packageSafelist`, `includeShadeMatrix`, theme/palette/
51
51
  ```bash
52
52
  iui login
53
53
  iui init # interactive — creates configs, installs framework
54
- iui install components # install @inventive-ui/components + prepare slots
54
+ iui install components # install @inventive-ui/components + sync the project registry
55
55
  iui install assets # optional — interactive asset picker
56
56
  ```
57
57
 
@@ -89,14 +89,14 @@ Every command below is implemented in the CLI today. Run `iui --help` or `iui <c
89
89
  | `iui init` | Initialize a new project: register, install framework, write configs | Yes |
90
90
  | `iui setup` | Clone-to-green: `.npmrc`, install deps, run doctor | Yes |
91
91
  | `iui install framework` | Install or reinstall `@inventive-ui/framework` | Yes |
92
- | `iui install components` | Install `@inventive-ui/components` and rebuild slot registry | Yes |
92
+ | `iui install components` | Install `@inventive-ui/components` and sync the project registry | Yes |
93
93
  | `iui install assets [ids...]` | Install asset packages (interactive picker if no ids) | Yes |
94
- | `iui list` | Show installed framework, components, assets, and slots | No |
94
+ | `iui list` | Show installed framework, components, and assets | No |
95
95
  | `iui list -a` | Show all components available in the registry | No |
96
96
  | `iui update` | Check and apply framework, component, asset, and CLI updates | Yes |
97
97
  | `iui doctor` | Run project health diagnostics | No |
98
98
  | `iui assets list` | Show available and installed asset packages | Yes |
99
- | `iui assets remove <id>` | Uninstall an asset package and update slot registry | Yes |
99
+ | `iui assets remove <id>` | Uninstall an asset package and update `assets.config.json` | Yes |
100
100
  | `iui team list` | List team seat assignments (admin) | Yes |
101
101
  | `iui team add [email]` | Add a teammate to team seats (admin) | Yes |
102
102
  | `iui team remove [email]` | Remove a teammate from active seats (admin) | Yes |
@@ -106,7 +106,7 @@ Every command below is implemented in the CLI today. Run `iui --help` or `iui <c
106
106
  | `iui deploy-token create [name]` | Create a short-lived scoped deploy token | Yes |
107
107
  | `iui deploy-token revoke <id>` | Revoke a deploy token immediately | Yes |
108
108
 
109
- **Note:** Inside an initialized project, most commands automatically validate and repair the slot registry before running.
109
+ **Note:** Inside an initialized project, most commands automatically validate and repair the project registry (component manifest, assets config, bootstrap) before running.
110
110
 
111
111
  ### Global options
112
112
 
@@ -175,8 +175,8 @@ Initialize an Inventive UI project in the current directory (or workspace root w
175
175
  - Writes project `.npmrc` (scope line only) and updates `.gitignore`
176
176
  - Ensures React 19.x or Vite 6.x+ is present (installs if missing)
177
177
  - Installs `@inventive-ui/framework` and `@inventive-ui/components`
178
- - Generates `iui.config.ts` (with compile-first `build` block), `component.config.ts`, `assets.config.json`, and Vite/TS configs as needed
179
- - Creates `.iui/project.json`, component/package manifests, and the slot registry
178
+ - Generates `theme.config.ts` (with compile-first `build` block), `component.config.ts`, `assets.config.json`, and Vite/TS configs as needed
179
+ - Creates `.iui/project.json`, component/package manifests, and the generated bootstrap
180
180
 
181
181
  | Option | Description |
182
182
  | ------ | ----------- |
@@ -242,11 +242,11 @@ iui -C apps/docs install framework
242
242
 
243
243
  ### `iui install components`
244
244
 
245
- Install or reinstall `@inventive-ui/components` and rebuild the slot registry.
245
+ Install or reinstall `@inventive-ui/components` and sync the project registry.
246
246
 
247
247
  **What it does:**
248
248
  - Installs the component library package
249
- - Regenerates `.iui/generated/` slot files and updates manifests
249
+ - Regenerates `.iui/generated/bootstrap.generated.tsx`, updates manifests, and removes stale component-slot output from older CLI versions
250
250
  - Syncs `package.json` if `node_modules` is ahead of the declared semver range
251
251
  - Skips reinstall if the same version is already installed (unless upgrading via `iui update`)
252
252
 
@@ -268,7 +268,7 @@ Install one or more asset packages (icons, illustrations, logos, flags, emoji, l
268
268
  **What it does:**
269
269
  - Validates license
270
270
  - Shows an interactive picker when no package ids are given
271
- - Installs selected packages and updates `assets.config.json` and the slot registry
271
+ - Installs selected packages and updates `assets.config.json`
272
272
 
273
273
  | Option | Description |
274
274
  | ------ | ----------- |
@@ -300,7 +300,7 @@ iui install assets illustrations flags emoji
300
300
 
301
301
  ### `iui list`
302
302
 
303
- Show installed framework version, component count, asset packages, and slot registry status for the current project.
303
+ Show installed framework version, component count, and asset packages for the current project.
304
304
 
305
305
  ```bash
306
306
  iui list
@@ -328,7 +328,7 @@ Check for and apply updates to the framework, components, individual components,
328
328
  - Reports if a newer CLI version exists (upgrade with `npx inventive-ui@latest`)
329
329
  - Checks registry for component, framework, and asset updates
330
330
  - Respects license update window (expired licenses see available versions but cannot install)
331
- - Installs selected updates and rebuilds slot registry
331
+ - Installs selected updates and syncs the project registry
332
332
  - Syncs `@inventive-ui/*` entries in `package.json` to `^<installed>` when `node_modules` is ahead
333
333
 
334
334
  | Option | Description |
@@ -357,13 +357,13 @@ Run a multi-point health check. Read-only by default; exits with code `1` if any
357
357
  - Project initialized (`.iui/project.json`)
358
358
  - `@inventive-ui/framework` and `@inventive-ui/components` installed
359
359
  - React 19.x or Vite 6.x (and matching `react-dom`)
360
- - **Three-config tiers:** `iui.config.ts` must not import `assets.config.json` or contain asset/component keys; `assets.config.json` schema + `globalIcons`; `component.config.ts` must not contain theme keys
360
+ - **Three-config tiers:** `theme.config.ts` must not import `assets.config.json` or contain asset/component keys; `assets.config.json` schema + `globalIcons`; `component.config.ts` must not contain theme keys
361
361
  - Component and asset package counts
362
- - Slot registry integrity
362
+ - Stale component-slot output from older CLI versions
363
363
  - Package compatibility between framework and components
364
364
  - Whether installed versions are behind latest (warns to run `iui update`)
365
365
  - Syncs `package.json` when `node_modules` is ahead of declared ranges
366
- - Generated slot file validity
366
+ - Generated bootstrap matches project config paths
367
367
  - `component.config.ts` validity (TypeScript check)
368
368
  - Compile-first bundler wiring (Vite/Webpack/Next plugin present when tooling detected)
369
369
 
@@ -371,8 +371,8 @@ In monorepos, doctors every app with a `.iui/` folder when run from the workspac
371
371
 
372
372
  | Option | Description |
373
373
  | ------ | ----------- |
374
- | `--fix` | Apply safe fixes (strip assets from `iui.config.ts`, patch build block, repair slots, install TypeScript for config validation) |
375
- | `--config-only` | Config tiers + slots + compile-first only — no auth/registry. Use in CI and pre-commit hooks |
374
+ | `--fix` | Apply safe fixes (strip assets from `theme.config.ts`, patch build block, regenerate bootstrap and remove stale slot output, install TypeScript for config validation) |
375
+ | `--config-only` | Config tiers + stale slot output + compile-first only — no auth/registry. Use in CI and pre-commit hooks |
376
376
 
377
377
  ```bash
378
378
  iui doctor
@@ -395,7 +395,7 @@ iui assets list
395
395
 
396
396
  ### `iui assets remove <id>`
397
397
 
398
- Remove an installed asset package, update `assets.config.json`, and prune its slots.
398
+ Remove an installed asset package, and update `assets.config.json`.
399
399
 
400
400
  ```bash
401
401
  iui assets remove illustrations
@@ -556,23 +556,22 @@ After `iui init`, the CLI manages:
556
556
 
557
557
  | Path | Purpose |
558
558
  | ---- | ------- |
559
- | `iui.config.ts` | `IUIThemeConfig` — theme, states, core, compile-first `build` block (no assets import) |
559
+ | `theme.config.ts` | `IUIThemeConfig` — theme, states, core, compile-first `build` block (no assets import) |
560
560
  | `component.config.ts` | `ComponentConfig` (`@inventive-ui/components/config`) — optional per-component defaults |
561
561
  | `assets.config.json` | `IUIAssetsConfig` — libraries, `globalIcons`, `@alias` maps, binding/preload |
562
562
  | `.iui/project.json` | Project ID, license, repo metadata |
563
563
  | `.iui/components.json` | Installed component versions |
564
564
  | `.iui/packages.json` | Installed asset package versions |
565
- | `.iui/slots.json` | Slot registry (components + assets) |
566
- | `.iui/generated/` | Managed slot helpers from the components **public slot contract** (do not edit) |
567
- | `.iui/slot-registration-state.json` | Operational checksum/state for no-op validation (ephemeral) |
568
- | `.iui/slot-registration.lock` | Short-lived lock file during slot reconciliation (ephemeral) |
565
+ | `.iui/generated/bootstrap.generated.tsx` | Managed bootstrap wiring theme + assets + component configs (do not edit) |
566
+ | `.iui/cache/slot-state.json` | Operational checksum/state for no-op validation (ephemeral; historical name) |
567
+ | `.iui/cache/slot.lock` | Short-lived lock file during registry reconciliation (ephemeral) |
569
568
  | `.iui/classes.cache.json`, `.iui/build-*`, `public/iui/` | Compile-first build cache artifacts (ephemeral) |
570
569
 
571
570
  Framework install status comes from `@inventive-ui/framework` in `node_modules`, not from `.iui/` metadata.
572
571
 
573
- Commit `package.json`, one lockfile, `.iui/` metadata and generated slot helpers, config files, and the project `.npmrc` scope line (no tokens). Do not commit ephemeral `.iui` state/lock/build-cache files. See [Team onboarding](docs/TEAM-ONBOARDING.md#what-to-commit-in-a-shared-repo).
572
+ Commit `package.json`, one lockfile, `.iui/` metadata and `.iui/generated/`, config files, and the project `.npmrc` scope line (no tokens). Do not commit ephemeral `.iui` state/lock/build-cache files. See [Team onboarding](docs/TEAM-ONBOARDING.md#what-to-commit-in-a-shared-repo).
574
573
 
575
- For the full integration map (Framework, Components, configs, bundlers), see [Architecture](docs/ARCHITECTURE.md). For ownership rules, validate vs repair, grouped slot codegen driven by `public-slot-contract.json`, and write-amplification KPIs, see [Consumer Codegen & Config Ownership](docs/CONSUMER-CODEGEN.md).
574
+ For the full integration map (Framework, Components, configs, bundlers), see [Architecture](docs/ARCHITECTURE.md). For ownership rules, validate vs repair, stale component-slot cleanup, and write-amplification KPIs, see [Consumer Codegen & Config Ownership](docs/CONSUMER-CODEGEN.md).
576
575
 
577
576
  ---
578
577
 
@@ -637,7 +636,7 @@ npm run start -- <cmd> # run built CLI locally, e.g. npm run start -- doctor
637
636
  | Doc | Audience |
638
637
  | --- | --- |
639
638
  | [ARCHITECTURE.md](docs/ARCHITECTURE.md) | **Start here** — full CLI flow and integration with Framework, Components, configs, bundlers |
640
- | [CONSUMER-CODEGEN.md](docs/CONSUMER-CODEGEN.md) | File ownership, validate vs repair, slot codegen |
639
+ | [CONSUMER-CODEGEN.md](docs/CONSUMER-CODEGEN.md) | File ownership, validate vs repair, stale slot cleanup |
641
640
  | [TEAM-ONBOARDING.md](docs/TEAM-ONBOARDING.md) | Clone-to-green, CI tokens, what to commit |
642
641
  | [RFC-002](docs/RFC-002-package-owned-runtime-registry.md) | 2.0 package-owned slot registry direction |
643
642
  | [RFC-003](docs/RFC-003-CLI-GATING.md) | CLI gating / release policy |