YAML Format Overview
A devResume YAML file has three layers:
- Top-level metadata — your name, title, contact info, chosen theme and font.
- Sections array — the body of the resume, composed of typed section blocks.
- Per-section items — the actual entries (jobs, skills, projects, …) inside each section.
Minimal example
Section titled “Minimal example”name: Jane Developertitle: Senior Engineertheme: classic-navyfont: inter
contact: location: Berlin, Germany
sections: - type: text title: Summary content: Backend engineer focused on distributed systems.This renders a complete (short) resume. Everything below is optional.
Top-level fields
Section titled “Top-level fields”| Field | Type | Required | Notes |
|---|---|---|---|
name | string | yes | Your full name. Appears in the header. |
title | string | no | Professional title shown below the name. |
profile_image | string (URL) | no | Avatar image. Supports https:// URLs. |
theme | string | yes | Format template-variant, e.g. classic-navy. See Themes. |
font | string | no | Font ID. One of: inter, jetbrains-mono, merriweather, ibm-plex-sans. Defaults to inter. |
contact | object | no | See Contact. |
sections | array | yes | Ordered list of sections. See Section Types. |
section_breaks | bool | no | If true, sections that overflow a page start a new page instead of splitting. |
Contact object
Section titled “Contact object”All fields optional. Omit what you do not want to show.
contact: phone: +49 151 23456789 location: Berlin, Germany github: github.com/janedev linkedin: linkedin.com/in/janedev xing: xing.com/profile/janedev website: jane.dev twitter: janedevThe github, linkedin, xing, and twitter fields accept either a full URL or a
handle. The rendered resume picks the right format.
Comments
Section titled “Comments”YAML supports comments with #. Use them to temporarily hide content or leave notes:
contact: # phone: +49 151 23456789 # not public yet location: Berlin, GermanyCommented lines are invisible in the rendered resume.
Quoting values
Section titled “Quoting values”If a value starts with a reserved YAML character (-, :, #, [, {), wrap it in quotes:
title: "Data Analyst - EMEA Region"# vs.title: Data Analyst # no colon, no quotes neededYears should be quoted so YAML treats them as strings, not integers:
start: "2022" # string, renders as "2022"end: "present" # already a stringWhat’s Next
Section titled “What’s Next”- Section Types for the full catalogue of
experience,skills, etc. - Multi-line text for bullet lists and long descriptions.
- FAQ for common questions.