# Index Page Generation for TYPO3 DDEV Projects ## Purpose Generate a professional overview page (`index.html`) that serves as the main entry point for the DDEV development environment, providing quick access to all TYPO3 versions and development tools. ## Automatic Branding Detection **The index page MUST automatically detect and apply appropriate branding:** ### Step 1: Detect Available Branding Skills Check for branding skills in this priority order: 1. **Company-specific branding** (e.g., `netresearch-branding`, `company-branding`) 2. **TYPO3 branding** (fallback - use TYPO3 orange #FF8700) 3. **Generic clean design** (last resort - neutral colors) **Detection Method:** ```bash # Check if branding skill exists list-skills | grep -i branding ``` ### Step 2: Apply Branding Based on Detection #### If Netresearch Branding Detected **Invoke:** `netresearch-branding` skill **Colors:** - Primary: #2F99A4 (Turquoise) - Accent: #FF4D00 (Orange) - Text: #585961 (Anthracite grey) - Background: #FFFFFF (White) - Light grey: #CCCDCC **Typography:** - Headlines: `font-family: 'Raleway', sans-serif;` (600/700 weight) - Body: `font-family: 'Open Sans', sans-serif;` (400 weight) **Layout:** - Compact header: 20px padding - High white space: 40px container padding - Card shadows: subtle with turquoise glow on hover #### If TYPO3 Branding (Fallback) **Colors:** - Primary: #FF8700 (TYPO3 Orange) - Secondary: #000000 (Black) - Text: #333333 (Dark grey) - Background: #F8F9FA (Light grey) - Cards: #FFFFFF (White) **Typography:** - System fonts: `-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif` - No external font imports **Layout:** - Standard header: 40px padding - Moderate white space: 30px container padding - Card shadows: standard grey shadows #### If No Branding (Generic) **Colors:** - Primary: #0066CC (Professional blue) - Text: #333333 - Background: #FFFFFF - Cards: #F5F5F5 **Typography:** - System fonts only - Standard sizing ## HTML Template Structure ### Required Elements 1. **Header** - Compact bar with project title 2. **Info Box** - Backend credentials (username/password) 3. **Grid Layout** - 2-4 columns responsive 4. **Cards** - One per TYPO3 version + tools 5. **Links** - Frontend and Backend URLs ### Card Content Template ```html
``` ### Cards to Include **Always include:** 1. TYPO3 12.4 LTS (🎯 emoji) 2. TYPO3 13.x (⚡ emoji) 3. Documentation (📚 emoji) 4. Development Tools (📧 emoji - Mailpit) **Optional cards** (if applicable): 5. TYPO3 11.5 LTS (📦 emoji) 6. Redis/Valkey (🔄 emoji) 7. Custom tools ## Generation Workflow ### Step 1: Detect Branding ``` 1. Check for branding skills 2. If netresearch-branding exists → Use Netresearch colors/fonts 3. Else if project has branding config → Use project branding 4. Else → Use TYPO3 branding (fallback) ``` ### Step 2: Extract Project Metadata ``` - Project name (from .ddev/config.yaml or composer.json) - DDEV sitename - Configured TYPO3 versions (from docker-compose or config) ``` ### Step 3: Generate HTML **File location:** `.ddev/web-build/index.html` **Template variables to replace:** - `{{PROJECT_NAME}}` - Extension display name - `{{DDEV_SITENAME}}` - DDEV project name - `{{PRIMARY_COLOR}}` - Brand primary color - `{{ACCENT_COLOR}}` - Brand accent color - `{{TEXT_COLOR}}` - Body text color - `{{FONT_HEADLINE}}` - Headline font family - `{{FONT_BODY}}` - Body font family ### Step 4: Copy to Web Root ```bash # After generation ddev exec cp /var/www/hello_world/.ddev/web-build/index.html /var/www/html/ ``` ## Example: Netresearch-Branded Index ```html