Skip to main content

1. Install

go install github.com/ovsec/resumelang@latest
Verify:
resumelang version

2. Scaffold a resume

resumelang init
# → created resume.yml
The starter file already includes:
# yaml-language-server: $schema=https://resumelang.dev/schema/v1.json
resumelang: v1

meta:
  theme: minimal
That preamble unlocks autocomplete and red-squiggle validation in any editor that speaks the YAML language server (VS Code, Neovim, JetBrains).

3. Build every format

resumelang build resume.yml
You get:
dist/
├── resume.html
├── resume.json    # JSON Resume schema
├── resume.md      # GitHub-flavored markdown
└── resume.txt     # ATS-safe plain text
PDF is one keystroke away — open dist/resume.html in a browser and print.

4. Switch theme

Either change meta.theme in the YAML file, or build with a flag:
resumelang build resume.yml --formats html
Built-in themes: minimal, aurora, material, terminal, sap. See Themes for previews and how to add your own.

5. Open the live editor

resumelang serve
# → http://127.0.0.1:5500
Edit YAML on the left, watch the preview re-render on the right. Drag the splitter, switch themes, hit Print to save as PDF. Drafts auto-save to the browser’s localStorage so you can close the tab without losing work.

6. Ship it

Publish via GitHub Actions

Every push to resume.yml rebuilds and deploys to GitHub Pages.

Use the VS Code extension

Inline preview, schema validation, theme picker — without leaving your editor.

What’s next

DSL schema

Every field in resume.yml, with examples.

CLI reference

All commands and flags in one page.