Skip to main content
Canonical URL: https://resumelang.dev/schema/v1.json In-tree: schema/v1.json

Definitions

The schema declares these reusable definitions:
NameDescription
MetaTheme, language, page size, sections.
PersonName, contact, social handles.
JobSingle experience entry.
EducationSingle education entry.
SkillGroupCategory + list of skills.
ProjectSide project entry.
PublicationPaper or article.
CertificationCertificate with optional credential ID.
LanguageSpoken language with proficiency.
VolunteerVolunteer entry.
AwardAward entry.
SectionCustom section with arbitrary items.
SectionItemHeading, subheading, description, date, url.
All definitions use additionalProperties: false, so unknown keys are errors — typos fail the validate step instead of silently disappearing.

Example

# yaml-language-server: $schema=https://resumelang.dev/schema/v1.json
resumelang: v1

meta:
  theme: aurora
  language: en
  page_size: a4
  sections: [summary, experience, skills, projects]

person:
  name: Jane Doe
  title: Senior Software Engineer
  email: jane@example.com
  github: janedoe
  linkedin: janedoe

summary: |
  Engineer with 8 years building distributed systems.

experience:
  - company: Acme Corp
    role: Lead Engineer
    start: "2021"
    end: ""
    highlights:
      - Scaled API to 10M req/day
    tags: [Go, Kubernetes]

skills:
  - category: Languages
    skills: [Go, Rust]

Versioning

The resumelang top-level field declares which version a file targets:
resumelang: v1
Compilers refuse files with a version they do not understand and emit a warning when the field is missing.