docs(product): add cms feature topics, package catalog, and inspiration notes
This commit is contained in:
244
docs/product-engineering/cms-feature-topics.md
Normal file
244
docs/product-engineering/cms-feature-topics.md
Normal file
@@ -0,0 +1,244 @@
|
||||
# CMS Feature Topics (Domain-Centric)
|
||||
|
||||
## Purpose
|
||||
|
||||
Describe the CMS by feature domains/modules (not personas), so implementation and UI structure stay clear.
|
||||
|
||||
## 1) Pages
|
||||
|
||||
Scope:
|
||||
|
||||
- create/edit/publish/unpublish/schedule pages
|
||||
- slug + SEO metadata
|
||||
- draft and publish states
|
||||
|
||||
Core entities:
|
||||
|
||||
- `Page`
|
||||
- `PageVersion` (later)
|
||||
- `SeoMeta`
|
||||
|
||||
MVP fit:
|
||||
|
||||
- MVP1 core
|
||||
|
||||
## 2) Navigation
|
||||
|
||||
Scope:
|
||||
|
||||
- menus, nested items, ordering, visibility
|
||||
- route linking to pages or external URLs
|
||||
|
||||
Core entities:
|
||||
|
||||
- `NavigationMenu`
|
||||
- `NavigationItem`
|
||||
|
||||
MVP fit:
|
||||
|
||||
- MVP1 core
|
||||
|
||||
## 3) Media
|
||||
|
||||
Scope:
|
||||
|
||||
- upload/browse/replace/delete media
|
||||
- media-type classification (artwork, banner, promo, generic, video/gif)
|
||||
- metadata management
|
||||
|
||||
Core entities:
|
||||
|
||||
- `MediaAsset`
|
||||
- `MediaMetadata`
|
||||
- `MediaVariant` (renditions)
|
||||
|
||||
MVP fit:
|
||||
|
||||
- MVP1 core
|
||||
|
||||
## 4) Portfolio / Artworks
|
||||
|
||||
Scope:
|
||||
|
||||
- artworks with grouped structures
|
||||
- grouping by galleries/albums/categories/tags
|
||||
- ordering and visibility
|
||||
|
||||
Core entities:
|
||||
|
||||
- `Artwork`
|
||||
- `Gallery`
|
||||
- `Album`
|
||||
- `Category`
|
||||
- `Tag`
|
||||
|
||||
MVP fit:
|
||||
|
||||
- MVP1 core
|
||||
|
||||
## 5) Cards and Reusable Blocks
|
||||
|
||||
Scope:
|
||||
|
||||
- reusable content blocks for pages
|
||||
- card-based sections (price cards, promo cards, feature cards)
|
||||
|
||||
Core entities:
|
||||
|
||||
- `BlockTemplate`
|
||||
- `BlockInstance`
|
||||
- `CardPreset`
|
||||
|
||||
MVP fit:
|
||||
|
||||
- MVP1 (baseline blocks), MVP2 (advanced builder UX)
|
||||
|
||||
## 6) Forms
|
||||
|
||||
Scope:
|
||||
|
||||
- embeddable forms on pages
|
||||
- schema-driven field definitions
|
||||
- submission handling and moderation
|
||||
|
||||
Core entities:
|
||||
|
||||
- `FormDefinition`
|
||||
- `FormField`
|
||||
- `FormSubmission`
|
||||
|
||||
MVP fit:
|
||||
|
||||
- MVP1 for commission request path
|
||||
- MVP2 for generic form builder
|
||||
|
||||
## 7) Announcements and Banners
|
||||
|
||||
Scope:
|
||||
|
||||
- prominent notices on public pages
|
||||
- schedule windows and priority
|
||||
|
||||
Core entities:
|
||||
|
||||
- `Announcement`
|
||||
- `HeaderBanner`
|
||||
|
||||
MVP fit:
|
||||
|
||||
- MVP1 core
|
||||
|
||||
## 8) News / Blog
|
||||
|
||||
Scope:
|
||||
|
||||
- editorial posts and updates
|
||||
- author metadata, status flow
|
||||
|
||||
Core entities:
|
||||
|
||||
- `NewsPost`
|
||||
- `NewsCategory`
|
||||
|
||||
MVP fit:
|
||||
|
||||
- MVP1 secondary core
|
||||
|
||||
## 9) Commissions
|
||||
|
||||
Scope:
|
||||
|
||||
- commission request intake
|
||||
- admin processing and kanban status transitions
|
||||
|
||||
Core entities:
|
||||
|
||||
- `CommissionRequest`
|
||||
- `CommissionStatus`
|
||||
- `CommissionType` (options/extras/custom fields)
|
||||
|
||||
MVP fit:
|
||||
|
||||
- MVP1 core
|
||||
|
||||
## 10) Customers (CRM-Lite)
|
||||
|
||||
Scope:
|
||||
|
||||
- recurring customer records
|
||||
- customer-to-commission linking and reuse
|
||||
|
||||
Core entities:
|
||||
|
||||
- `Customer`
|
||||
- `CustomerContact`
|
||||
- `CustomerCommissionLink`
|
||||
|
||||
MVP fit:
|
||||
|
||||
- MVP1 core
|
||||
|
||||
## 11) Users, Roles, and Permissions
|
||||
|
||||
Scope:
|
||||
|
||||
- users, role assignment, status (active/banned)
|
||||
- protected owner/support invariants
|
||||
|
||||
Core entities:
|
||||
|
||||
- `User`
|
||||
- `Role`
|
||||
- `Permission`
|
||||
|
||||
MVP fit:
|
||||
|
||||
- MVP0/MVP1 bridge; refinements in MVP2
|
||||
|
||||
## 12) Settings
|
||||
|
||||
Scope:
|
||||
|
||||
- system settings and feature flags
|
||||
- registration policy and future locale toggles
|
||||
|
||||
Core entities:
|
||||
|
||||
- `SystemSetting`
|
||||
|
||||
MVP fit:
|
||||
|
||||
- MVP0 baseline, expanded in MVP1/MVP2
|
||||
|
||||
## 13) Processing Pipelines (Later)
|
||||
|
||||
Scope:
|
||||
|
||||
- watermarking
|
||||
- color extraction
|
||||
- advanced media transforms
|
||||
- queue/retry visibility
|
||||
|
||||
Core entities:
|
||||
|
||||
- `MediaJob`
|
||||
- `MediaJobRun`
|
||||
- `ExtractedPalette`
|
||||
|
||||
MVP fit:
|
||||
|
||||
- MVP2
|
||||
|
||||
## Suggested Admin IA Alignment
|
||||
|
||||
- Dashboard
|
||||
- Pages
|
||||
- Navigation
|
||||
- Media
|
||||
- Portfolio
|
||||
- Announcements
|
||||
- News
|
||||
- Commissions
|
||||
- Customers
|
||||
- Users
|
||||
- Settings
|
||||
Reference in New Issue
Block a user