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.6.0.tar.gz (12.8 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.6.0-py3-none-any.whl (15.7 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for codeurcv-0.6.0.tar.gz
Algorithm Hash digest
SHA256 518a3370bf3f63d1a917b49464771729634c89580d7d49a5af2b3a429568fc63
MD5 f0172b09795c5d214507f7f245fdd98b
BLAKE2b-256 242b8b98bea58ecc806cc4ec6e0ff13fac46b5e410a8589e7569fc423e1a819c

See more details on using hashes here.

Provenance

The following attestation bundles were made for codeurcv-0.6.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.6.0-py3-none-any.whl.

File metadata

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

File hashes

Hashes for codeurcv-0.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 30c521f90bf26e8d553698635c70d6d9b9d65a0f6dba1c6a762b0d9fa6a8ee69
MD5 47615e5556a07ba8c03673af4ccd205c
BLAKE2b-256 74dbbac0daae3df5dfe929297f87ea30c85c1044d2c365382f82a8f996be60d8

See more details on using hashes here.

Provenance

The following attestation bundles were made for codeurcv-0.6.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