Worked on collaborations and structure
What does this MR do and why?
This merge request implements dynamic Collaborations and Organizational Structure management using Strapi CMS for the Vishwam AI website.
Previously, the content for these sections was static and hardcoded in the frontend. This change moves all content management to Strapi, enabling dynamic updates without modifying frontend code.
The following improvements were implemented:
Created a Collection Type for managing collaboration entries.
Enabled dynamic addition of partner name, category, description, and related details.
Exposed REST API endpoints for frontend integration.
Removed static collaboration data from frontend.
Created a Single Type Structure for managing the entire organizational structure page.
Implemented reusable components for:
Hierarchy Items
Council Members
Working Groups
Meeting Schedule
Added repeatable components for dynamic sections like:
Governing Council Members
Executive Council Members
Working Groups
Meeting Schedules
This improves scalability, maintainability, and content flexibility for the website.
References
Strapi Documentation – Content Type Builder Strapi Components & Repeatable Components REST API: /api/structure?populate=* REST API: /api/collaborations?populate=*
Screenshots or screen recordings
Before
After
Static hardcoded structure & collaborations Dynamic CMS-driven content
Manual frontend edits required Fully manageable via Strapi Admin
No API population REST API with populate support
How to set up and validate locally
Create or update entries in:
Structure (Single Type)
Collaborations (Collection Type)
Call API:
http://localhost:1337/api/structure?populate=* http://localhost:1337/api/collaborations?populate=*
Verify frontend renders updated content dynamically.
Technical Implementation Details Structure (Single Type)
Attributes:
heroTitle (string)
heroSubtitle (string)
hierarchyItems (repeatable component)
governingCouncilMembers (repeatable component)
executiveCouncilMembers (repeatable component)
workingGroups (repeatable component)
meetingSchedules (repeatable component)
Components Created
structure.hierarchy-item
structure.council-member
structure.working-group
structure.meeting-schedule
Collaborations (Collection Type)
Attributes:
title
description
partner
category
media
optional SEO fields
MR Acceptance Checklist