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, giving a warning if there are any spelling mistakes, 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 code documentation 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.7.tar.gz (106.8 MB view details)

Uploaded Source

Built Distribution

rendercv-0.7-py3-none-any.whl (107.7 MB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for rendercv-0.7.tar.gz
Algorithm Hash digest
SHA256 79146c498d9846a6d18e3ffeb64ec1c6cb53e86d5e51ecd38b0cd4e35c356837
MD5 d76d1104bfc63cfa27f412c773220d8e
BLAKE2b-256 99fc3c9f9d207059d58b50e679979337a8bf89e7177f05bdfc73e355ae8883b3

See more details on using hashes here.

File details

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

File metadata

  • Download URL: rendercv-0.7-py3-none-any.whl
  • Upload date:
  • Size: 107.7 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.7-py3-none-any.whl
Algorithm Hash digest
SHA256 048c77ce351a4ba216d2bafaa40afbbad2d89fa868b5c2eb59d7e5e44095eb80
MD5 2baf405fb23cd34cc172c68a3a43f6c5
BLAKE2b-256 23a6a2fae3b80e854a6b9e92fe293dfd75de4a9f11faf5e7f18b64b114d90997

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