WORK-450
ID:WORK-450Status:ready

Framework-agnostic theme scaffold default with --target opt-in

Per ADR-024, the --type theme scaffold currently emits a Svelte-coupled theme (svelte/ folder, SvelteTheme export, target: 'svelte') that doesn't match the framework-agnostic reference theme (Lumina, which ships zero .svelte). Default it to framework-agnostic; make the framework component layer opt-in via --target.

Priority:highComplexity:moderateMilestone:v0.25.0Source:SPEC-116
claude/v0.25.0-workitems View source

Criteria completion

Criteria completion: 0 of 4 (0%) checked; tracking started on Jun 23, no incremental history yet0%25%50%75%100%Jun 23Jul 11

Tracking started Jun 23 — check back for trends.

Branches 4
History 1
  1. a6bdcba
    Created (ready)by bjornolofandersson

Acceptance Criteria

  • --type theme defaults to a framework-agnostic theme: tokens + ./transform config + ./layouts configs + manifest + per-rune CSS + css-coverage test; no svelte/, SvelteTheme, or target
  • --target <framework> opts into the framework component layer (adds svelte/, the ./svelte export, framework layout components)
  • The agnostic scaffold matches the reference theme (Lumina) shape and builds clean
  • Inherits the ADR-023 deps + day-one build wiring (WORK-448)

Approach

Rework scaffoldTheme in packages/create-refrakt/src/scaffold.ts to emit the agnostic core by default (mirroring packages/lumina), gating the svelte/ layer behind --target. Drop target from the default manifest.

Dependencies

  • WORK-447--type dispatch (and the --target flag plumbing)
  • WORK-448 — deps + build wiring

References

  • SPEC-116; ADR-024
  • packages/create-refrakt/src/scaffold.ts; packages/lumina/package.json