# Frontend Database Connection Fix ## ๐Ÿ› Issue Identified **Problem:** All frontend admin pages showing "Internal server error" **Root Cause:** Domain mismatch between frontend and Directus API ### Configuration Before Fix: - **Frontend Domain:** `launch.jumpstartscaling.com` - **Directus Domain:** `spark.jumpstartscaling.com` - **Frontend Environment Variable:** `PUBLIC_DIRECTUS_URL='https://spark.jumpstartscaling.com'` - **Directus PUBLIC_URL:** `'https://spark.jumpstartscaling.com'` **Result:** Frontend trying to connect to `spark.jumpstartscaling.com` but CORS not allowing cross-domain requests properly. --- ## โœ… Fix Applied ### Changes Made to `docker-compose.yaml`: **1. Updated Directus Configuration (Lines 50-54):** ```yaml # Before: CORS_ORIGIN: 'https://launch.jumpstartscaling.com,http://localhost:4321' PUBLIC_URL: 'https://spark.jumpstartscaling.com' # After: CORS_ORIGIN: 'https://launch.jumpstartscaling.com,https://spark.jumpstartscaling.com,http://localhost:4321' PUBLIC_URL: 'https://launch.jumpstartscaling.com' ``` **2. Updated Frontend Configuration (Line 79):** ```yaml # Before: PUBLIC_DIRECTUS_URL: 'https://spark.jumpstartscaling.com' # After: PUBLIC_DIRECTUS_URL: 'https://launch.jumpstartscaling.com' ``` --- ## ๐Ÿ”„ Deployment Steps 1. โœ… **Committed Changes:** `git push gitea-https main` 2. โœ… **Directus Restarted:** Applied new CORS and PUBLIC_URL settings 3. ๐Ÿ”„ **Frontend Rebuild Required:** Coolify will automatically rebuild frontend with new environment variable --- ## ๐Ÿงช Testing After Deployment Once Coolify completes the frontend rebuild (check Coolify dashboard), test these pages: ### Core Pages to Verify: 1. **Avatar Intelligence:** https://launch.jumpstartscaling.com/admin/content/avatars 2. **Sites Manager:** https://launch.jumpstartscaling.com/admin/sites 3. **Generated Articles:** https://launch.jumpstartscaling.com/admin/seo/articles 4. **Mission Control:** https://launch.jumpstartscaling.com/admin ### Expected Results: - โœ… No "Internal server error" - โœ… Empty data tables (no data yet) OR - โœ… Data grids with test data - โœ… Console shows successful API calls to `/items/{collection}` ### How to Verify: ```bash # Open browser dev tools (F12) # Navigate to Network tab # Reload page # Look for requests to: https://launch.jumpstartscaling.com/items/{collection} # Should see: 200 OK responses ``` --- ## ๐Ÿ“‹ All Pages to Test After deployment completes, verify these pages are working: 1. โœ… https://launch.jumpstartscaling.com/admin/content/avatars 2. โœ… https://launch.jumpstartscaling.com/admin/collections/avatar-variants 3. โœ… https://launch.jumpstartscaling.com/admin/collections/geo-intelligence 4. โœ… https://launch.jumpstartscaling.com/admin/collections/spintax-dictionaries 5. โœ… https://launch.jumpstartscaling.com/admin/collections/cartesian-patterns 6. โœ… https://launch.jumpstartscaling.com/admin/collections/campaign-masters 7. โœ… https://launch.jumpstartscaling.com/admin/collections/content-fragments 8. โœ… https://launch.jumpstartscaling.com/admin/collections/headline-inventory 9. โœ… https://launch.jumpstartscaling.com/admin/collections/offer-blocks 10. โœ… https://launch.jumpstartscaling.com/admin/collections/generation-jobs 11. โœ… https://launch.jumpstartscaling.com/admin/sites 12. โœ… https://launch.jumpstartscaling.com/admin/seo/articles 13. โœ… https://launch.jumpstartscaling.com/admin/leads 14. โœ… https://launch.jumpstartscaling.com/admin/settings 15. โœ… https://launch.jumpstartscaling.com/admin/content/work_log 16. โœ… https://launch.jumpstartscaling.com/admin/media/templates 17. โœ… https://launch.jumpstartscaling.com/admin/content-factory 18. โœ… https://launch.jumpstartscaling.com/admin 19. โœ… https://launch.jumpstartscaling.com/admin/sites/jumpstart --- ## ๐Ÿ” Possible Remaining Issues If pages still show errors after deployment, check: ### 1. **Missing Collections in Database** Some collections might not have database tables yet. **Solution:** ```sql -- Check which tables exist SELECT tablename FROM pg_tables WHERE schemaname = 'public' AND tablename NOT LIKE 'directus_%'; ``` ### 2. **Hardcoded Data in Components** Some components might have hardcoded mock data instead of API calls. **Files to Check:** - `frontend/src/components/admin/**/*.tsx` - `frontend/src/pages/admin/**/*.astro` **Look for:** - `const mockData = [...]` - Hardcoded arrays instead of `readItems()` calls ### 3. **TypeScript Type Mismatches** Frontend types might not match database schema. **Solution:** - Compare `frontend/src/types/schema.ts` with `unified_schema.json` - Ensure field names match exactly ### 4. **Missing API Token** Some pages might need authentication. **Solution:** - Check if `DIRECTUS_ADMIN_TOKEN` is set in environment - Verify API calls include authentication headers ### 5. **CORS Issues** If specific API calls fail with CORS errors. **Solution:** - Add more origins to `CORS_ORIGIN` in docker-compose.yaml - Check browser console for CORS-specific errors --- ## ๐Ÿ“Š Deployment Status **Commits Pushed:** - `c7e6dcb` - Updated Directus PUBLIC_URL and CORS - `ab8511f` - Updated frontend PUBLIC_DIRECTUS_URL **Services Restarted:** - โœ… Directus (manual restart completed) - ๐Ÿ”„ Frontend (waiting for Coolify auto-deploy) **Next Action:** Wait for Coolify to complete frontend rebuild (~2-5 minutes), then test all pages. --- ## ๐Ÿค– For AI Agents If pages still show errors after this fix: 1. **Check Coolify Deployment Logs** - Verify frontend rebuild completed successfully - Check for build errors 2. **Verify Environment Variables** - Confirm `PUBLIC_DIRECTUS_URL` is set during build - Check Astro build output for environment variable values 3. **Test API Directly** ```bash curl https://launch.jumpstartscaling.com/items/sites # Should return JSON, not HTML ``` 4. **Check Individual Page Code** - Review each failing page's source code - Verify it's using `readItems()` from Directus SDK - Ensure no hardcoded data 5. **Database Schema Verification** - Confirm all collections have corresponding database tables - Verify foreign key relationships are correct --- **Fix Applied:** December 14, 2025 10:25 AM EST **Status:** ๐Ÿ”„ **Waiting for Coolify Deployment**