Skip to content

Global project status

Reference audit: QForm Builder Community 0.1.33, after npm publication of 0.1.32. The accessibility fixture no longer mounts QPage without QLayout. The closure patch aligns auto-fit sizing with Quasar's content box, keeps overlays below the toolbar and stabilizes the QSelect scenario when the adapter marker is forwarded to the native input.

Version 0.1.31 moves the tested baseline to FormKit 2.1.0, bounds peer dependencies to the 2.x line and refreshes the left and right drawers without changing the public API. The bilingual illustrated user guide remains integrated. The four advanced-panel baselines affected by auto-fit are refreshed and the local matrix passes 24/24; this archive remains a candidate until all 12 baselines and 12 guide screenshots have been inspected and validated on the reference Windows 11 workstation.

Summary

QForm Builder is now a Community release-candidate product. Functional coverage, migrations, the Chromium harness, the twelve-baseline contract and automated accessibility are in place; visual-regression baselines still need to be restored; the editorial guide screenshots ship with regenerable bootstrap references. Version 0.1.17 adds multi-OS industrialization, bundle budgets, a verified npm artifact and a separate SSR Nuxt host application. Version 0.1.18 hardens local Playwright server isolation and formalizes visual-baseline bootstrap. Version 0.1.19 adds the complete-workspace guard. Version 0.1.20 freezes the candidate public surface with a machine-readable manifest and an external TypeScript consumer contract. Version 0.1.21 adds a release evidence ledger, explicit lockfile coverage and strict artifact verification before promotion. Version 0.1.22 reconnects the preview FormKit model to the canonical reactive values record so the Information drawer, conditions and host v-model:values follow every input. Version 0.1.23 makes the right drawer transition between Properties and Information deterministic without resetting the form. Version 0.1.24 makes canvas selection independent from Quasar control stacking, including controls placed after QColor. Version 0.1.25 removes the implicit post-submit reset and keeps multi-step values in the Information drawer and host model. Version 0.1.26 keeps one Playwright port across the runner, Nuxt server and workers on Windows, then fixes drive-letter paths in the UI i18n scan. Version 0.1.27 automates the bilingual illustrated guide and explicitly separates editorial screenshots from visual-regression baselines. Version 0.1.28 fixes the typed fixture and prevents an interrupted generation from deleting already published screenshots. Version 0.1.29 expands only the timeline capture context without changing the public UI. Version 0.1.31 moves to FormKit 2.1.0 and adds the polished drawer treatment, with mandatory Windows acceptance before publication.

DomainEstimated progressConclusion
Phase 1 — public contract and npm layer100%Closed
Phase 2 — functional coverage100%Closed
Phase 2 — industrial hardening99.9%CI matrix, RC host, public contract and reproducible lockfile integrated; PNGs and first green remote run still to confirm
Phase 3 — NFZ / Zod / Studio differentiation20%Started through templates
Community 1.0.0 readiness99%Human review, remote CI runs and RC publication remain

These percentages are internal planning estimates. They measure the documented scope, not a universal quality score.

Phase 1 — closed

The layer provides bounded npm packaging, typed public APIs, extensible catalog and panels, multi-instance behavior, secure import/export, FR/EN documentation, a Feathers/NFZ example, and the builder imperative API.

Phase 2 — functional coverage closed

Available today:

  • Quasar/FormKit fields and nested containers;
  • responsive columns and viewport simulation;
  • steps/pages with blocking validation;
  • recursive conditions and an explainable simulator;
  • typed validation, guarded regex, and cross-field rules;
  • visible history, restoration, and shortcuts;
  • recursive tree with drag-and-drop and cycle prevention;
  • shared Builder/Viewer Theme Builder;
  • coherent light/dark rendering;
  • Community templates and a public registry;
  • complete import/export and versioned migrations;
  • keyboard navigation for catalog, canvas and tree;
  • live announcements, focus restoration and automated WCAG A/AA axe auditing;
  • readonly and disabled modes covered by browser tests.

Patches 0.1.12 through 0.1.16 closed the advanced-theme, persistence, Chromium-harness, visual-baseline and accessibility debts. Patch 0.1.17 adds the real typecheck + Nuxt/Nitro build + VitePress + Playwright Chromium Linux/Windows matrix, an SSR host-app build, verified npm artifacts and chunk/font budgets. Patch 0.1.18 prevents silent reuse of an unrelated local server and decouples quality checks from first-time screenshot initialization. Patch 0.1.19 makes the full-archive/overlay boundary executable. Patch 0.1.20 publishes public-api.manifest.json, exports component props/events contracts and compiles an external consumer of every public subpath. Patch 0.1.21 makes RC promotion auditable through direct lockfile coverage, twelve baselines, npm tarball SHA-256, manual review and a release evidence ledger. Patch 0.1.22 closes the FormKit object-replacement regression without changing the frozen public contract. Patch 0.1.23 removes the destructive FormKit reset on mode changes, remounts the semantic drawer view and restores the editing selection. Patch 0.1.24 adds capture-phase pointerdown/click delegation, an explicit overlay stacking contract and a regression for interactive controls placed after QColor. Patch 0.1.25 removes the post-submit reset, commits the submitted snapshot to the canonical values record and covers stepper finalization in Playwright. Patch 0.1.26 replaces PID-based config port calculation with a wrapper that propagates one URL and uses fileURLToPath() for Windows scans. Patch 0.1.27 generates twelve FR/EN documentation screenshots, hashes them in a manifest and publishes them through VitePress. Patch 0.1.28 adds isolated staging, complete FR/EN promotion with rollback and an explicit cold-compilation budget. Patch 0.1.29 adds a centred contextual capture for compact dialogs. Patch 0.1.31 moves the baseline to FormKit 2.1.0, adds a bounded 2.x compatibility contract and refreshes both drawers without changing the public contract.

Remaining blockers before version 1.0

  1. Run the new GitHub Actions matrix in the real repository and retain several consecutive green runs with bun install --frozen-lockfile.
  2. Complete human accessibility review with NVDA, keyboard-only use, 200% zoom and reflow; document any exceptions.
  3. Review CI bundle reports and continue splitting Theme Builder/IconPicker if chunks approach the budget.
  4. Publish the 1.0.0-rc.1 release candidate, integrate it into a separate real business application, then accept only compatible regression fixes before 1.0.0.

The migration/version contract for persisted schemas and themes is no longer a functional blocker. Future changes must use the public migration registry.

Phase 3 — next product milestone

Recommended order remains:

  1. public Zod → FormBuilder schema adapter;
  2. server validation and Feathers/NFZ persistence;
  3. map a form to a CRUD service;
  4. versioned business packs;
  5. guided generation with strict validation and human confirmation;
  6. headless canvas mode for existing NFZ dashboards.

Steering decision

The project has completed functional Phase 2 and its main industrial hardening. The public contract is now candidate-frozen. The next milestone is the 1.0.0-rc.1 release candidate. The reproducible lockfile is now complete; the remaining prerequisites are a green remote CI matrix run and a validated release evidence ledger covering artifacts and accessibility.

QForm Builder — Nuxt 4, Quasar and FormKit layer for dynamic forms.