Skip to main content

LaTeX CV generator from a YAML/JSON file

Project description

RenderCV

CI coverage pypi-version pypi-downloads

RenderCV is a Python application that creates a $\LaTeX$ CV as a PDF from a JSON/YAML input file. Currently, it only supports one theme (classic). An example PDF can be seen here. More themes are planned to be supported in the future.

What does it do?

  • It parses a YAML (or JSON) file that looks like this:
cv:
  name: John Doe
  label: Mechanical Engineer
  location: Geneva, Switzerland
  email: johndoe@example.com
  phone: "+33749882538"
  website: https://example.com
  social_networks:
    - network: GitHub
      username: johndoe
    - network: LinkedIn
      username: johndoe
  education:
    - institution: My University
      url: https://example.com
      area: Mechanical Engineering
      study_type: BS
      location: Geneva, Switzerland
      start_date: "2017-09-01"
      end_date: "2023-01-01"
      transcript_url: https://example.com
      gpa: 3.10/4.00
      highlights:
        - "Class rank: 10 of 62"
    - institution: The University of Texas at Austin
      url: https://utexas.edu
      area: Mechanical Engineering, Student Exchange Program
      location: Austin, TX, USA
      start_date: "2021-08-01"
      end_date: "2022-01-15"
  work_experience:
    - company: AmIACompany
      position: Summer Intern
      location: Istanbul, Turkey
      url: https://example.com
      start_date: "2022-06-15"
      end_date: "2022-08-01"
      highlights:
        - AmIACompany is a **technology** (markdown is
          supported) company that provides web-based
          engineering applications that enable the
          simulation and optimization of products and
          manufacturing tools.
        - Modeled and simulated a metal-forming process deep
          drawing using finite element analysis with
          open-source software called CalculiX.
  • Then, it validates the input, such as checking if the dates are consistent, checking if the URLs are correct, etc.
  • Then, it creates a $\LaTeX$ file.
  • Finally, it renders the $\LaTeX$ file to generate the PDF, and you don't need $\LaTeX$ installed on your PC because RenderCV comes with TinyTeX.

RenderCV example

Quick Start Guide

  1. Install Python (3.10 or newer).
  2. Run the command below to install RenderCV.
    pip install rendercv
    
  3. Run the command below to generate a sample input file (Full_Name_CV.yaml). The file will be generated in the current working directory.
    rendercv new "Full Name"
    
  4. Edit the contents of the Full_Name_CV.yaml file.
  5. Run the command below to generate your $\LaTeX$ CV.
    rendercv render Full_Name_CV.yaml
    

Detailed User Guide and Documentation

A more detailed user guide can be found here.

I documented the whole code with docstrings and used comments throughout the code. The API reference can be found here.

Contributing

All contributions to RenderCV are welcome, especially adding new $\LaTeX$ themes.

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

rendercv-0.9.tar.gz (106.4 MB view details)

Uploaded Source

Built Distribution

rendercv-0.9-py3-none-any.whl (107.8 MB view details)

Uploaded Python 3

File details

Details for the file rendercv-0.9.tar.gz.

File metadata

  • Download URL: rendercv-0.9.tar.gz
  • Upload date:
  • Size: 106.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for rendercv-0.9.tar.gz
Algorithm Hash digest
SHA256 06a09861d17f87cdb33d2b50d0359fec27e05fe61ae07afb06e6c1bcee32e8ba
MD5 c08059c05a3bfeb63fb92ebaa251421f
BLAKE2b-256 03ad3948d7cfb3f24e83299a58c90c0ced7b025709da6853fe51e2053da0822b

See more details on using hashes here.

File details

Details for the file rendercv-0.9-py3-none-any.whl.

File metadata

  • Download URL: rendercv-0.9-py3-none-any.whl
  • Upload date:
  • Size: 107.8 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for rendercv-0.9-py3-none-any.whl
Algorithm Hash digest
SHA256 5d998bf2259784032912d839cd13cc4f5f87a18501ffed5a72b84cbc5104cef0
MD5 d2059840d572cab35138f791f7453268
BLAKE2b-256 f188dcd7247df72fdaab0afec25fac2c44e0d7ac6b538f2cccdbf8da88262bba

See more details on using hashes here.

Supported by

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