diff --git a/TODO.md b/TODO.md index aa4e238..c1c92c1 100644 --- a/TODO.md +++ b/TODO.md @@ -190,21 +190,39 @@ This file is the single source of truth for roadmap and delivery progress. - [ ] [P2] Add code-level diagrams (Mermaid) for service boundaries and data relationships - [ ] [P2] Add route/action inventory for admin and public apps with linked source files -## MVP 1.5: UX/UI And Theming +## MVP 1.5: MVP1 Refinements (Planned) -### MVP1.5 Suggested Branch Order +### Scope -- [ ] [P1] `todo/mvp15-design-tokens-foundation`: +- [ ] [P1] Refine and harden all completed MVP1 modules (pages, navigation, media, portfolio, commissions, news) +- [ ] [P1] Resolve UX rough edges discovered during MVP1 implementation +- [ ] [P1] Improve admin workflows and reduce editor friction for daily use +- [ ] [P1] Stabilize public rendering behavior with better fallbacks and consistency + +## MVP 2: MVP1 Quality Refinements (Planned) + +### Scope + +- [ ] [P1] Finish non-blocking enhancements postponed from MVP1 implementation +- [ ] [P1] Improve data modeling consistency and migration hygiene for MVP1 modules +- [ ] [P1] Consolidate reusable UI and domain primitives introduced during MVP1 +- [ ] [P1] Address integration debt before moving to larger design/production phases + +## MVP 3: UX/UI And Theming + +### MVP3 Suggested Branch Order + +- [ ] [P1] `todo/mvp3-design-tokens-foundation`: establish shared design tokens (color, spacing, radius, typography scale, motion) in `@cms/ui` and app-level theme contracts -- [ ] [P1] `todo/mvp15-admin-layout-polish`: +- [ ] [P1] `todo/mvp3-admin-layout-polish`: refine admin shell, navigation hierarchy, spacing rhythm, table/form visual consistency, empty/loading/error states -- [ ] [P1] `todo/mvp15-public-layout-and-templates`: +- [ ] [P1] `todo/mvp3-public-layout-and-templates`: define public visual direction (hero/header/footer/content widths), page templates for home/content/news/portfolio -- [ ] [P2] `todo/mvp15-component-library-pass`: +- [ ] [P2] `todo/mvp3-component-library-pass`: align shadcn-based primitives with CMS brand system (buttons, inputs, cards, badges, tabs, dialogs, toasts) -- [ ] [P2] `todo/mvp15-responsive-and-a11y-pass`: +- [ ] [P2] `todo/mvp3-responsive-and-a11y-pass`: mobile/tablet breakpoints, keyboard flow, focus states, contrast checks, reduced-motion support -- [ ] [P2] `todo/mvp15-visual-regression-baseline`: +- [ ] [P2] `todo/mvp3-visual-regression-baseline`: add screenshot baselines for critical admin/public routes to guard layout regressions ### Deliverables @@ -214,7 +232,7 @@ This file is the single source of truth for roadmap and delivery progress. - [ ] [P2] Shared UI primitives are consistent across admin and public apps - [ ] [P2] Core routes have visual-regression coverage for the new layout baseline -## MVP 2: Production Readiness +## MVP 4: Production Readiness ### Admin App @@ -253,9 +271,9 @@ This file is the single source of truth for roadmap and delivery progress. ### Testing -- [~] [P1] Testing workstream moved to `MVP 3: Testing and Quality` and temporarily paused to prioritize feature delivery +- [~] [P1] Testing workstream moved to `MVP 5: Testing and Quality` and temporarily paused to prioritize feature delivery -## MVP 3: Testing and Quality +## MVP 5: Testing and Quality ### Status @@ -316,7 +334,7 @@ This file is the single source of truth for roadmap and delivery progress. - [2026-02-11] Release workflow now publishes changelog-derived notes to Gitea releases and supports executable production rollback via SSH + compose tag switch. - [2026-02-11] Branch protection verification checklist is now documented; final UI-level verification remains environment-specific. - [2026-02-11] Added a staging deployment execution checklist and deployment-record template to capture first real-host rollout evidence. -- [2026-02-11] Artist-focused feature map refined: MVP1 covers portfolio media/domain CRUD + announcements + customer/commission linking; MVP2 covers advanced automation (watermark, palette extraction, media transform pipelines). +- [2026-02-11] Artist-focused feature map refined: MVP1 covers portfolio media/domain CRUD + announcements + customer/commission linking; MVP4 covers advanced automation (watermark, palette extraction, media transform pipelines). - [2026-02-11] `gaertan` inspiration to reuse: S3 object strategy with signed delivery, commission type/options/extras/custom-input modeling, request-status kanban mapping, and gallery rendition/color extraction patterns. - [2026-02-11] MVP1 media foundation started: portfolio domain models (`MediaAsset`, `Artwork`, galleries/albums/categories/tags, rendition links) plus initial admin `/media` and `/portfolio` data views. - [2026-02-11] `prisma migrate dev --name media_foundation` can fail when DB endpoint is unreachable; apply this named migration once `DATABASE_URL` host is reachable again. diff --git a/apps/admin/src/app/pages/[id]/page.tsx b/apps/admin/src/app/pages/[id]/page.tsx index 3c524d5..f318d4f 100644 --- a/apps/admin/src/app/pages/[id]/page.tsx +++ b/apps/admin/src/app/pages/[id]/page.tsx @@ -10,6 +10,7 @@ import Link from "next/link" import { redirect } from "next/navigation" import { AdminShell } from "@/components/admin-shell" +import { PageBlockEditor } from "@/components/pages/page-block-editor" import { requirePermissionForRoute } from "@/lib/route-guards" export const dynamic = "force-dynamic" @@ -242,16 +243,7 @@ export default async function PageEditorPage({ params, searchParams }: PageProps /> -