-
Claude authored
The v2 builder could not express more than one page: website_sections had a unique(academy_id, section_key) constraint, there was no pages table, and SectionManager exposed only toggle + reorder. A client with a seven-page site had no way to represent page two. Adds an additive page/block model alongside v2: - website_pages + website_blocks (nested tree, JSONB data/style) - BlockRegistry of BlockType classes: 31 types, 133 layout variants, 237 fields, 442 validation rules derived from the field schema - Page/Block/Menu/Blueprint services, BlockRenderer, BlockDataResolver - Builder UI: page manager, block tree editor, schema-driven field forms, repeaters, content/design/motion panels, image upload - Authored navigation (website_menus) with dropdowns, replacing nav links that were previously derived from enabled sections - Blueprint import/export via `php artisan website:blueprint` - Extended motion library: entrance effects, delay, stagger, parallax A new block type now costs one PHP class — no migration, no enum case, no CHECK constraint. Nothing here is destructive. website_sections is untouched and "/" falls back to the legacy renderer when no builder homepage exists, so already-deployed tenants are unaffected until they opt in. Co-Authored-By:Claude Opus 5 <noreply@anthropic.com>
39f468a9
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| cache | ||
| app.php | ||
| providers.php |