Skip to content

Repository files navigation

md-cv-gen

CI PyPI License: MIT Python uv

Generate a clean, professional PDF CV from a Markdown file. Optionally password-protect the output.

Features

  • Markdown in, PDF out — write your CV in plain Markdown, render it to a print-ready A4 PDF (or HTML).
  • Sensible typographic defaults — an embedded stylesheet handles colors, spacing and page layout; tweak it in one place.
  • Password protection — optionally encrypt the generated PDF.
  • Single dependency-light CLI — one command, no config files.

Prerequisites

Installation

pip install md-cv-gen

Or run it without installing, using uv:

uvx md-cv-gen cv.md -o cv.pdf

Usage

# Output HTML to stdout
md-cv-gen cv.md

# Generate an HTML file
md-cv-gen cv.md -o cv.html

# Generate a PDF
md-cv-gen cv.md -o cv.pdf

# Generate a password-protected PDF
md-cv-gen cv.md -o cv.pdf -p "secret"

The output format is determined by the -o file extension (.pdf or .html). Without -o, HTML is printed to stdout.

Markdown structure

# First Last
**Job title** | City, Country
email | phone | links

---

## Section                         <!-- h2 sections -->

### Role - Company                 <!-- h3 subsections -->
*Dates | Location*                 <!-- dates in italic -->

- Achievements as bullet points

Style customization

The CSS is defined in the STYLE variable in src/cv_generator.py. You can modify colors, fonts and spacing directly.

Element Property Default
Primary color color (h2, links) #2980b9 (blue)
Text color color (body) #2c3e50 (dark grey)
Font font-family Helvetica Neue, Arial
Page size size (@page) A4
Margins margin (@page) 1.5cm 2cm

Development

git clone https://github.com/goabonga/cv-generator.git
cd cv-generator
uv sync
uv run pre-commit install
uv run ruff check .

See CONTRIBUTING.md for the full workflow, commit conventions and release process.

License

MIT © Chris

About

Generate a clean, professional PDF CV from a Markdown file. Optionally password-protect the output.

Resources

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages