YAML Schema Reference

This page documents all fields available in resume.yaml. Your file is validated against our JSON Schema.

Top-Level Structure

personalInfo:   # Required — your basic info
sections:       # Ordered array of sections (render order = array order)

personalInfo

FieldTypeRequiredDescription
namestringYesFull name
titlestringNoJob title or headline
emailstringNoEmail address
phonestringNoPhone number
locationstringNoCity, Country
linksarrayNoList of { label, url }

Section Types

Each section in the sections array has a type field that determines its structure and rendering. Sections are rendered in array order — reorder them to customize your layout.

type: summary

FieldTypeRequiredDescription
type"summary"Yes
titlestringNoOverride heading (default: "Summary")
taglinestringNoShort headline
contentstringYesProfessional summary (Markdown supported)

type: experience

FieldTypeRequiredDescription
type"experience"Yes
titlestringNoOverride heading (default: "Experience")
itemsarrayYesList of experience entries

Each item in items:

FieldTypeRequiredDescription
positionstringYesJob title or role
organizationstringNoCompany, community, or project name
locationstringNoCity, Country
startDatedateYesStart date
endDatedate | nullNoEnd date (omit for current)
descriptionstringNoResponsibilities and achievements (Markdown supported)

type: education

FieldTypeRequiredDescription
type"education"Yes
titlestringNoOverride heading (default: "Education")
itemsarrayYesList of education entries

Each item in items:

FieldTypeRequiredDescription
institutionstringYesSchool or university name
degreestringYesDegree and major
locationstringNoCity, Country
startDatedateNoStart date
endDatedate | nullNoEnd date
descriptionstringNoCoursework, honors, etc.

type: skills

FieldTypeRequiredDescription
type"skills"Yes
titlestringNoOverride heading (default: "Skills")
itemsarrayYesList of skill groups

Each item in items:

FieldTypeRequiredDescription
categorystringYesCategory name (e.g. Languages, Frameworks)
itemsstring[]YesList of skills

type: generic

Use for structured sections like Projects, Certifications, Awards, etc.

FieldTypeRequiredDescription
type"generic"Yes
titlestringYesSection heading
itemsarrayYesList of items

Each item in items:

FieldTypeRequiredDescription
titlestringYesItem title
subtitlestringNoSubtitle or organization
urlstringNoLink URL
startDatedateNoStart date
endDatedate | nullNoEnd date
descriptionstringNoAdditional details (Markdown supported)

type: list

Use for simple bullet lists like Publications, Languages, Governance roles, etc.

FieldTypeRequiredDescription
type"list"Yes
titlestringYesSection heading
itemsstring[]YesList of items (each supports Markdown)

Date Format

All date fields accept three formats:

  • YYYY — year only (e.g. "2024")
  • YYYY-MM — year and month (e.g. "2024-03")
  • YYYY-MM-DD — full date (e.g. "2024-03-15")

Important: Always wrap dates in quotes in YAML to prevent them from being parsed as numbers.

Markdown Support

The following fields support Markdown:

  • summary.content
  • experience[].description
  • generic[].description
  • list[].items

Supported syntax: bold, italic, inline code, links, and bullet lists.

YAML Tips

  • Use | for multi-line strings (preserves line breaks)
  • Use >- for folded strings (joins lines with spaces, strips trailing newline)
  • Wrap strings containing : or special characters in quotes
  • Use # for comments