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.
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
.ymlor.jsonfile. 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:
file-name: config.yml
out-dir: output
→ codeurcv-action on GitHub · View on Marketplace
🤝 Contributing
See CONTRIBUTING.md — contributions are welcome!
📜 License
MIT © codeurcv contributors
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file codeurcv-0.4.0.tar.gz.
File metadata
- Download URL: codeurcv-0.4.0.tar.gz
- Upload date:
- Size: 12.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
15395654c9aa87550976ef18aead359f9e524b62b824bb1a85e71478f1416f50
|
|
| MD5 |
3c777e2d29018559fbd119913229575a
|
|
| BLAKE2b-256 |
31c8050fa90009fc4f0c16d24cd5aacce703a627afd26b70e65df1655ca841b1
|
Provenance
The following attestation bundles were made for codeurcv-0.4.0.tar.gz:
Publisher:
release-please.yml on crackedngineer/codeurcv
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
codeurcv-0.4.0.tar.gz -
Subject digest:
15395654c9aa87550976ef18aead359f9e524b62b824bb1a85e71478f1416f50 - Sigstore transparency entry: 1039053774
- Sigstore integration time:
-
Permalink:
crackedngineer/codeurcv@1658aa8041c647a2da42a34c9fb53477908c91d5 -
Branch / Tag:
refs/heads/master - Owner: https://github.com/crackedngineer
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release-please.yml@1658aa8041c647a2da42a34c9fb53477908c91d5 -
Trigger Event:
push
-
Statement type:
File details
Details for the file codeurcv-0.4.0-py3-none-any.whl.
File metadata
- Download URL: codeurcv-0.4.0-py3-none-any.whl
- Upload date:
- Size: 14.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
73bcf8729554bedd4eff092edaefe385e97c64852588991a12bec400e220fef8
|
|
| MD5 |
c6bf141d14c2e0ab46773da089369b96
|
|
| BLAKE2b-256 |
2d18dd9b370f759dcbbdacf4795d9166f373174c4d4ecf08a13171d09ee0e690
|
Provenance
The following attestation bundles were made for codeurcv-0.4.0-py3-none-any.whl:
Publisher:
release-please.yml on crackedngineer/codeurcv
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
codeurcv-0.4.0-py3-none-any.whl -
Subject digest:
73bcf8729554bedd4eff092edaefe385e97c64852588991a12bec400e220fef8 - Sigstore transparency entry: 1039053894
- Sigstore integration time:
-
Permalink:
crackedngineer/codeurcv@1658aa8041c647a2da42a34c9fb53477908c91d5 -
Branch / Tag:
refs/heads/master - Owner: https://github.com/crackedngineer
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release-please.yml@1658aa8041c647a2da42a34c9fb53477908c91d5 -
Trigger Event:
push
-
Statement type: