Skip to main content

A Python library to generate LaTeX resumes from YAML configuration files using Jinja2 templates.

Project description

📄 codeurcv

Turn a simple YAML or JSON file into a professional resume — instantly.

PyPI version Python License: MIT GitHub Action

Whether you're a student, working professional, or researcher — write your details once, get a polished PDF resume every time.


✨ Features

  • Simple input format — describe your resume in a human-readable .yml or .json file. No LaTeX knowledge required.
  • Premium templates for free — choose from a curated set of professionally designed resume templates.
  • GitHub Action — automate resume generation on every push. Always have an up-to-date PDF in your repo.
  • Supports all profiles — students, working professionals, and researchers are all first-class citizens.

🚀 Quickstart

# config.yml
basic_details:
  name: Jane Doe
  email: jane@example.com
  phone: "+1 555 000 0000"
  location: San Francisco, CA
  linkedin: linkedin.com/in/janedoe
  github: github.com/janedoe

summary: >
  Full-stack engineer with 5 years of experience building scalable web applications.

education:
  - institution: University of California, Berkeley
    degree: B.S. Computer Science
    year: 2019

work:
  - company: Acme Corp
    role: Senior Engineer
    start: Jan 2021
    end: Present
    highlights:
      - Led migration to microservices, reducing latency by 40%
      - Mentored a team of 4 junior engineers

skills:
  - category: Languages
    featured: 
        - Python
        - TypeScript
        - Go
  - category: Tools
    featured: 
        - Docker
        - Kubernetes
        - PostgreSQL
codeurcv generate example/config.yml
# → resume.pdf

📦 Installation

pip install codeurcv

Dependencies

codeurcv requires two external tools to generate PDFs:

Pandoc

Pandoc is a universal document converter used to process templates.

Platform Command
Windows winget install --id JohnMacFarlane.Pandoc or choco install pandoc
macOS brew install pandoc
Debian/Ubuntu sudo apt install pandoc
Fedora/RHEL sudo dnf install pandoc
Arch/Manjaro sudo pacman -S pandoc

Full Pandoc installation guide

pdflatex (TeX Live / MiKTeX)

pdflatex is the LaTeX engine used to render the final PDF.

Platform Command
Windows winget install --id MiKTeX.MiKTeX or choco install miktex
macOS brew install --cask mactex
Debian/Ubuntu sudo apt install texlive-latex-base
Fedora/RHEL sudo dnf install texlive-latex
Arch/Manjaro sudo pacman -S texlive-basic
openSUSE sudo zypper install texlive-latex

TeX Live installation guide · MiKTeX for Windows


🖼️ Templates

Name Best For
classic All-purpose, clean single column
modern Tech roles, sidebar layout
academic Researchers, publications-focused
minimalist Design roles, typography-forward
codeurcv generate config.yml --template minimalist

📖 Local Setup

See SETUP.md for full developer setup instructions.


⚡ GitHub Action

Automate resume generation on every push using the official GitHub Action.

- uses: crackedngineer/codeurcv-action@v1
  with:
    config-path: config.yml
    out-dir: output
    template: minimalist
    filename: john-doe-resume

codeurcv-action on GitHub · View on Marketplace


🤝 Contributing

See CONTRIBUTING.md — contributions are welcome!


📜 License

MIT © codeurcv contributors

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

codeurcv-0.5.0.tar.gz (12.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

codeurcv-0.5.0-py3-none-any.whl (15.3 kB view details)

Uploaded Python 3

File details

Details for the file codeurcv-0.5.0.tar.gz.

File metadata

  • Download URL: codeurcv-0.5.0.tar.gz
  • Upload date:
  • Size: 12.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for codeurcv-0.5.0.tar.gz
Algorithm Hash digest
SHA256 d103a5fbb470e9d54eb20f6ec3d965162e9b413b78fde5557ae60653c6545889
MD5 62e302926f34a034c3d525541086ecc8
BLAKE2b-256 103283ea2067327024f2dfb1fe877f20e25551ce26174692977a5fe4552ed7aa

See more details on using hashes here.

Provenance

The following attestation bundles were made for codeurcv-0.5.0.tar.gz:

Publisher: release-please.yml on crackedngineer/codeurcv

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file codeurcv-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: codeurcv-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 15.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for codeurcv-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d2051cb0c2a2f9b68ec2e9e9921a8d957b37010349534f4e4b4e48b6f95abb7c
MD5 aba5ac1519225da3cbea845baa2463ef
BLAKE2b-256 2c46edd238c7eabf79ebc290edf620a97798c714a761706e7b0ce950d8557ff8

See more details on using hashes here.

Provenance

The following attestation bundles were made for codeurcv-0.5.0-py3-none-any.whl:

Publisher: release-please.yml on crackedngineer/codeurcv

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page