Team
Team member profiles, the founder flag, and how components query team data.
File Structure
Team members are YAML files in content/team/:
content/team/drew-macgibbon.yml
slug: drew-macgibbon
isFounder: true
givenName: Drew
surname: MacGibbon
email: [email protected]
role: Technical Founder
bio: Building tools for founders who ship fast.
avatar:
src: /images/team/drew.jpg
alt: Drew MacGibbon
links:
- label: Twitter
url: https://x.com/DrewMacGibbon
icon: i-simple-icons-x
- label: GitHub
url: https://github.com/Drew-Macgibbon
icon: i-simple-icons-github
Schema
The baseTeamSchema validates each team file:
| Field | Type | Required | Description |
|---|---|---|---|
slug | string | Yes | URL-safe identifier (matches filename) |
isFounder | boolean | No | true for the primary founder (default: false) |
givenName | string | Yes | First name |
surname | string | Yes | Last name |
email | string | No | Email address (validated format) |
role | string | No | Job title or role |
bio | string | No | Short biography |
avatar.src | string | Yes | Path to avatar image |
avatar.alt | string | Yes | Alt text for avatar |
links | array | No | Social/web links with label, url, and optional icon |
The Founder Flag
Setting isFounder: true on a team member has specific effects:
ConvertSocialqueries for the founder's social links and displays them as buttons- RSS feeds use the founder's name as the feed author
defaultAuthorinapp.config.tscontrols which team member is the fallback author for changelog entries
Only one team member should have isFounder: true.
Default Author
Set the default author in app.config.ts:
app/app.config.ts
content: {
defaultAuthor: 'drew-macgibbon', // matches the slug
}
This is used by the Changelog component when a changelog entry doesn't specify an explicit author.
See the Team schema definition for all available fields.