feat: integrate Strapi CMS for dynamic Summer of AI page
✅ MR Description
📌 Overview
This MR fixes data fetching and UI inconsistencies on the Summer of AI page to ensure it fully matches the production design and correctly renders content from Strapi.
🔧 Changes Made
🟢 Data Integration Fixes
- Fixed incorrect/null data rendering from Strapi
- Ensured all sections fetch complete data:
- Hero section (heading, subheading, tagline, buttons, description)
- Features section (cards)
- FAQ section (questions + structured answers)
- Properly handled optional/null values to avoid runtime errors
🎨 UI & Layout Fixes
- Matched layout exactly with production (
viswam.ai) - Fixed hero section:
- Correct spacing between heading, tagline, description
- Proper button alignment and sizing
- Updated feature cards:
- Correct grid layout (3-column responsive)
- Fixed card size, spacing, and alignment
- Removed unnecessary "Why Join Summer of AI?" heading
❓ FAQ Section Fixes
- Fixed incorrect rendering of rich text from Strapi
- Implemented proper parsing of:
- Paragraphs
- Bullet lists (maintaining order)
- Removed unwanted arrow icons
- Matched spacing, indentation, and formatting with production UI
🐛 Bug Fixes
- Fixed error:
Cannot read properties of null (reading 'heading') - Prevented UI break when data is missing
- Ensured consistent rendering across all sections
📷 Result
-
UI now matches production design
-
All content is dynamically fetched from Strapi
-
FAQ structure and formatting are correct
Related issues
