chore(docs): F2 — PrimeVue documentation foundation #22

Merged
bert.hausmans merged 5 commits from chore/f2-primevue-docs into main 2026-05-10 23:23:54 +02:00

Implements F2 of RFC-WS-FRONTEND-PRIMEVUE — documentation foundation for the PrimeVue migration. No application code, no dependency installation, no Vuetify removal. F3 installs PrimeVue + Tailwind v4; F4 migrates components per route tree.

What this delivers

  • dev-docs/PRIMEVUE_COMPONENTS.md (385 lines): foundation documentation covering component mapping by category (form / layout / data / feedback / navigation / overlays), Aura theme + Crewli teal tokens, FormField + Zod resolver pattern (cross-references RFC Appendix A), DataTable patterns, pass-through API conventions, Tailwind v4 integration, migration-phase guidance for F4 sub-packages
  • dev-docs/VUEXY_COMPONENTS.md reduced from 777 to 33 lines: deprecation stub forwarding to PRIMEVUE_COMPONENTS.md, with explicit pointer to git history at SHA 1c449ff6204cae6371da08c34ea8934d6b2ffcb8 for un-migrated surfaces during F4. F6 deletes entirely.
  • CLAUDE.md updated: framework conventions reframed as "during F4: prefer PrimeVue per PRIMEVUE_COMPONENTS.md; un-migrated surfaces follow Vuetify until their F4 batch lands"
  • .cursorrules mirrored CLAUDE.md updates for Cursor IDE
  • .claude-sync.conf expanded to include PRIMEVUE_COMPONENTS.md (33 → 34 entries, accounting for the trailing-newline wc -l quirk verified during the sprint)

Key design decisions

  • Icons stay Tabler/Iconify per RFC AD-5, not lucide-vue-next (the original task-spec aside was wrong; corrected during Phase A). Stack-agnostic between Vuetify and PrimeVue.
  • Categorization is net-new content: F1 audit grouped Vuetify components by frequency; PRIMEVUE_COMPONENTS.md introduces the six-category structure that F4 will reference per sub-package.
  • VUEXY_COMPONENTS.md as stub, not deletion: deferred to F6 to give F4-developers an explicit forwarding marker, with original content recoverable via git history.

What this does NOT change

  • No .vue, .ts, .js file in apps/app/src/ is touched
  • No new dependencies installed
  • No Vuetify packages removed
  • Vitest 402 tests still pass unchanged

Reviewer checklist

  • PRIMEVUE_COMPONENTS.md scope is "good enough for F4a" — F4 sub-packages refine, do not rewrite
  • VUEXY_COMPONENTS.md stub points to commit 1c449ff for content recovery
  • CLAUDE.md and .cursorrules updates are surgical (only UI-framework references touched)
  • FormField API in §5 cross-references RFC Appendix A (single source of truth)

Post-merge action required

Re-upload .claude-sync/ to Project Knowledge (35 files now, manifest SHA matches new main HEAD). PRIMEVUE_COMPONENTS.md is net-new; SYNC_MANIFEST.md regenerated.

🤖 Generated with Claude Code

Implements F2 of RFC-WS-FRONTEND-PRIMEVUE — documentation foundation for the PrimeVue migration. **No application code, no dependency installation, no Vuetify removal.** F3 installs PrimeVue + Tailwind v4; F4 migrates components per route tree. ## What this delivers - **`dev-docs/PRIMEVUE_COMPONENTS.md`** (385 lines): foundation documentation covering component mapping by category (form / layout / data / feedback / navigation / overlays), Aura theme + Crewli teal tokens, FormField + Zod resolver pattern (cross-references RFC Appendix A), DataTable patterns, pass-through API conventions, Tailwind v4 integration, migration-phase guidance for F4 sub-packages - **`dev-docs/VUEXY_COMPONENTS.md`** reduced from 777 to 33 lines: deprecation stub forwarding to PRIMEVUE_COMPONENTS.md, with explicit pointer to git history at SHA `1c449ff6204cae6371da08c34ea8934d6b2ffcb8` for un-migrated surfaces during F4. F6 deletes entirely. - **`CLAUDE.md`** updated: framework conventions reframed as "during F4: prefer PrimeVue per PRIMEVUE_COMPONENTS.md; un-migrated surfaces follow Vuetify until their F4 batch lands" - **`.cursorrules`** mirrored CLAUDE.md updates for Cursor IDE - **`.claude-sync.conf`** expanded to include PRIMEVUE_COMPONENTS.md (33 → 34 entries, accounting for the trailing-newline `wc -l` quirk verified during the sprint) ## Key design decisions - **Icons stay Tabler/Iconify** per RFC AD-5, not lucide-vue-next (the original task-spec aside was wrong; corrected during Phase A). Stack-agnostic between Vuetify and PrimeVue. - **Categorization is net-new content**: F1 audit grouped Vuetify components by frequency; PRIMEVUE_COMPONENTS.md introduces the six-category structure that F4 will reference per sub-package. - **VUEXY_COMPONENTS.md as stub, not deletion**: deferred to F6 to give F4-developers an explicit forwarding marker, with original content recoverable via git history. ## What this does NOT change - No `.vue`, `.ts`, `.js` file in `apps/app/src/` is touched - No new dependencies installed - No Vuetify packages removed - Vitest 402 tests still pass unchanged ## Reviewer checklist - [ ] PRIMEVUE_COMPONENTS.md scope is "good enough for F4a" — F4 sub-packages refine, do not rewrite - [ ] VUEXY_COMPONENTS.md stub points to commit `1c449ff` for content recovery - [ ] CLAUDE.md and .cursorrules updates are surgical (only UI-framework references touched) - [ ] FormField API in §5 cross-references RFC Appendix A (single source of truth) ## Post-merge action required Re-upload `.claude-sync/` to Project Knowledge (35 files now, manifest SHA matches new main HEAD). PRIMEVUE_COMPONENTS.md is net-new; SYNC_MANIFEST.md regenerated. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
bert.hausmans added 5 commits 2026-05-10 23:23:39 +02:00
Foundation document for F2 of RFC-WS-FRONTEND-PRIMEVUE. Encodes
Crewli-specific conventions for the Vuetify→PrimeVue migration:

- Component mapping by category (form / layout / data display /
  feedback / navigation / overlays), each with a paragraph on
  migration spirit; cross-references PrimeVue docs rather than
  duplicating reference material
- Aura theme + Crewli teal primary token plan (full token list in
  RFC Appendix B; F3 implements)
- Canonical forms pattern: @primevue/forms + Zod resolver +
  <FormField> wrapper (full API spec lives in RFC Appendix A —
  cross-referenced, not duplicated)
- DataTable conventions: lazy / virtual / column-template, with a
  slot translation cheat sheet from VDataTable
- pt API + Tailwind v4 + Aura tokens decision matrix
- Migration phase guidance (surface-level consistency rule, no
  back-porting, F6 cliff)
- VIcon stays Iconify-Tabler per RFC AD-5; PrimeIcons not installed

Length: 385 lines. F4 sub-packages will extend §3 as surfaces migrate.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Vuexy/Vuetify component reference is superseded by PRIMEVUE_COMPONENTS.md
per RFC-WS-FRONTEND-PRIMEVUE. Stub forwards readers to the new doc and
provides the explicit pre-F2 SHA (1c449ff620)
for retrieving the original 777-line content during F4a–F4c on
un-migrated surfaces.

File deleted entirely in F6 cleanup. Stub-not-delete decision per
2026-05-10 project chat (Bert): explicit forwarding marker beats
git-history archaeology while parallel-mode is in force.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
CLAUDE.md updated for the Vuetify→PrimeVue migration phase per
RFC-WS-FRONTEND-PRIMEVUE F2:

- Stack line: notes PrimeVue + Tailwind v4 as target, Vuetify still
  present on un-migrated surfaces
- Replaced "Vuexy reference source" + "Vuexy-first strategy" sections
  with a single "UI framework strategy (migration-aware)" section that
  splits guidance into migrated / un-migrated / new surfaces and
  forwards to PRIMEVUE_COMPONENTS.md
- Forms section now documents both target (@primevue/forms + Zod
  resolver via FormField) and legacy (ref + VForm + :rules) patterns,
  with the surface-level-consistency rule
- UI section reframed: PrimeVue + Tailwind on migrated surfaces,
  Vuetify utilities on legacy surfaces, three-state pattern preserved
  on both
- Order of work: framework note added for new pages during F4

Framework-agnostic sections (database, multi-tenancy, ULID,
controllers, models, security, testing) untouched.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Mirrors CLAUDE.md changes in B3:

- Stack line notes PrimeVue + Tailwind v4 as target, Vuetify as legacy
- New "UI framework strategy (migration-aware)" section forwards to
  PRIMEVUE_COMPONENTS.md with surface-level guidance
- Vuexy reference-path section retained but scoped to legacy surfaces
- Vue 3 section split: Tailwind + pt on migrated, Vuetify-first on
  legacy
- Top blockquote signals this file evolves as F4 progresses

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Closes B5 of F2 (RFC-WS-FRONTEND-PRIMEVUE). PRIMEVUE_COMPONENTS.md
joins the synced doc set so Claude Project Knowledge picks it up on
next upload of .claude-sync/.

Sync output:
- .claude-sync.conf: 34 → 35 entries (+1: PRIMEVUE_COMPONENTS.md)
- .claude-sync/*.md: 34 → 35 files (sync script output;
  SYNC_MANIFEST.md auto-regenerated, not counted as net-new)

VUEXY_COMPONENTS.md kept in conf (deprecation stub still useful as a
forwarding marker during F4); removed in F6.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
bert.hausmans merged commit 834611103e into main 2026-05-10 23:23:54 +02:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: bert.hausmans/crewli#22