Configuration
- sectionType: team-grid
containerTag: aside
text:
title: 'Our Team'
prose: 'Meet the talented people behind our success.'
team:
source: 'team-example'
layout: 'grid'
Configuration Options
Layout Options
| Property | Type | Required | Description |
|---|
team.layout | string | No | Layout type ('grid', 'compact'). Defaults to 'grid' |
team.source | string | Yes | Data file name in lib/data/team/ directory |
Content
| Property | Type | Required | Description |
|---|
text | object | No | Optional intro text with title, subtitle, and prose |
Team Member Data Structure
Each member in the data file should follow this structure:
{
"name": "Sarah Chen",
"role": "CEO & Founder",
"bio": "Passionate about building products that make a difference.",
"extendedBio": "<p>Extended biography with HTML markup...</p>",
"image": {
"src": "/assets/images/team/sarah.jpg",
"alt": "Sarah Chen"
},
"social": [
{ "platform": "linkedin", "url": "https://linkedin.com/in/sarah" },
{ "platform": "twitter", "url": "https://twitter.com/sarah" },
{ "platform": "github", "url": "https://github.com/sarah" },
{ "platform": "email", "url": "mailto:sarah@example.com" },
{ "platform": "website", "url": "https://sarah.dev" }
]
}
Profile Dialog
When extendedBio is provided (grid layout only), the short bio displays with an ellipsis and a "More" link that opens a modal dialog with the full biography. The dialog uses the native HTML <dialog> element for accessibility (focus trapping, backdrop click, Escape key to close).
Supported social platforms: twitter, linkedin, github, email, website.