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:

FieldTypeRequiredDescription
slugstringYesURL-safe identifier (matches filename)
isFounderbooleanNotrue for the primary founder (default: false)
givenNamestringYesFirst name
surnamestringYesLast name
emailstringNoEmail address (validated format)
rolestringNoJob title or role
biostringNoShort biography
avatar.srcstringYesPath to avatar image
avatar.altstringYesAlt text for avatar
linksarrayNoSocial/web links with label, url, and optional icon

The Founder Flag

Setting isFounder: true on a team member has specific effects:

  • ConvertSocial queries for the founder's social links and displays them as buttons
  • RSS feeds use the founder's name as the feed author
  • defaultAuthor in app.config.ts controls 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.