2023-10-27 20:46:32 +00:00
# RenderCV
2023-10-20 18:58:43 +00:00
[![CI ](https://github.com/sinaatalay/rendercv/actions/workflows/ci.yaml/badge.svg?branch=main )](https://github.com/sinaatalay/rendercv/actions/workflows/ci.yaml)
[![coverage ](https://coverage-badge.samuelcolvin.workers.dev/sinaatalay/rendercv.svg )](https://coverage-badge.samuelcolvin.workers.dev/redirect/sinaatalay/rendercv)
2023-10-27 20:46:32 +00:00
[![pypi-version ](https://img.shields.io/pypi/v/rendercv?label=PyPI%20version&color=rgb(0%2C79%2C144 ))](https://pypi.python.org/pypi/rendercv)
2023-11-22 18:19:49 +00:00
[![pypi-downloads ](https://img.shields.io/pepy/dt/rendercv?label=PyPI%20downloads&color=rgb(0%2C%2079%2C%20144 ))](https://pypi.python.org/pypi/rendercv)
2023-09-13 17:10:21 +00:00
2023-10-27 20:46:32 +00:00
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 ](https://github.com/sinaatalay/rendercv/blob/main/John_Doe_CV.pdf?raw=true ). More themes are planned to be supported in the future.
2023-09-13 18:02:27 +00:00
2023-10-20 18:58:43 +00:00
**What does it do?**
2023-09-13 18:02:27 +00:00
2023-10-20 18:58:43 +00:00
- It parses a YAML (or JSON) file that looks like this:
```yaml
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
2023-10-27 20:46:32 +00:00
- network: LinkedIn
username: johndoe
2023-10-20 18:58:43 +00:00
education:
2023-10-22 15:33:49 +00:00
- institution: My University
url: https://example.com
2023-10-20 18:58:43 +00:00
area: Mechanical Engineering
2024-02-10 19:30:30 +00:00
degree: BS
2023-10-22 15:33:49 +00:00
location: Geneva, Switzerland
2023-10-20 18:58:43 +00:00
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:
2023-10-27 20:46:32 +00:00
- AmIACompany is a **technology** (markdown is
supported) company that provides web-based
engineering applications that enable the
2023-10-20 18:58:43 +00:00
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.
```
2023-11-16 20:48:41 +00:00
- Then, it validates the input, such as checking if the dates are consistent, checking if the URLs are correct, etc.
2023-10-20 18:58:43 +00:00
- Then, it creates a $\LaTeX$ file.
2023-10-22 15:33:49 +00:00
- 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 ](https://yihui.org/tinytex/ ).
2023-09-13 18:02:27 +00:00
2023-10-27 20:46:32 +00:00
![RenderCV example ](images/example.png )
2023-10-20 18:58:43 +00:00
## Quick Start Guide
2023-09-13 18:02:27 +00:00
2023-10-20 18:58:43 +00:00
1. Install [Python ](https://www.python.org/downloads/ ) (3.10 or newer).
2. Run the command below to install RenderCV.
```bash
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.
```bash
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.
```bash
rendercv render Full_Name_CV.yaml
```
2023-09-13 18:02:27 +00:00
2023-10-20 18:58:43 +00:00
## Contributing
2023-09-13 18:02:27 +00:00
2023-10-22 15:33:49 +00:00
All contributions to RenderCV are welcome, especially adding new $\LaTeX$ themes.