Skip to content

Repository files navigation

Resume

A single YAML source that builds both a static site and a PDF.

  • resume.yaml — the one source of truth for all content.
  • pdf/resume.pdf — the PDF, for job applications.
  • GitHub Pages hosts the site and the PDF.

Build

./build.sh

The script creates .venv, installs requirements.txt, then runs render.py.

render.py writes:

  • resume.json — the content as the JSON Resume format (with custom fields).
  • index.html — the static site, styled with the theme from resume.yaml.
  • pdf/resume.pdf — the same themed page printed to PDF (via WeasyPrint).

Re-run ./build.sh after each edit to resume.yaml.

Requirements

  • Python 3.
  • Pango for WeasyPrint. Install it with brew install pango.

GitHub Pages

.github/workflows/publish-site.yml builds and deploys the site on push.

Enable it once in the repo settings:

  1. Open Settings > Pages.
  2. Set Source to "GitHub Actions".

The page includes a Download PDF link pointing at pdf/resume.pdf.

Layout

  • resume.yaml — content and theme (single source of truth).
  • resume.schema.json — schema for resume.yaml.
  • render.py — generates resume.json, index.html, and the PDF.
  • requirements.txt — Python dependencies.
  • resume.json, index.html, pdf/ — generated output.

Editing

Edit resume.yaml only. Do not edit the generated files.

About

Hire me.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages