Top Related Projects
:page_facing_up: Awesome CV is LaTeX template for your outstanding job application
Yet another alternative curriculum vitae/résumé class with LaTeX
:necktie: A collection of cv and resume templates written in LaTeX. Leave an issue if your language is not supported!
Quick Overview
Vitae is an R package that provides a collection of LaTeX and HTML templates for creating customizable curricula vitae (CVs). It aims to simplify the process of creating professional-looking CVs by leveraging R Markdown and various templates, allowing users to focus on content rather than formatting.
Pros
- Easy to use with R Markdown, requiring minimal LaTeX knowledge
- Offers multiple templates for different CV styles and formats
- Allows for easy customization and updating of CV content
- Supports both LaTeX and HTML output formats
Cons
- Limited to R users, may not be suitable for those unfamiliar with R
- Requires some setup and package installation
- May have a learning curve for users new to R Markdown
- Limited compared to more comprehensive LaTeX CV packages
Code Examples
- Loading the package and creating a new CV:
library(vitae)
# Create a new CV using the awesomecv template
cv_awesome <- cv_document(template = "awesomecv")
- Adding education information:
library(tibble)
education <- tribble(
~ degree, ~ year, ~ institution, ~ where,
"Ph.D. in Data Science", "2020", "University of Data", "Dataville, USA",
"M.Sc. in Statistics", "2016", "Stats College", "Statstown, USA",
"B.Sc. in Mathematics", "2014", "Math University", "Mathville, USA"
)
detailed_entries(education, what = degree, when = year, with = institution, where = where)
- Adding work experience:
work <- tribble(
~ role, ~ company, ~ loc, ~ dates, ~ details,
"Data Scientist", "Tech Corp", "San Francisco, CA", "2020-Present", "Developed machine learning models for product recommendations",
"Statistical Analyst", "Research Inc", "New York, NY", "2016-2020", "Conducted statistical analysis for clinical trials"
)
detailed_entries(work, what = role, when = dates, with = company, where = loc, why = details)
Getting Started
To get started with vitae:
- Install the package:
install.packages("vitae")
- Create a new R Markdown document with a vitae template:
rmarkdown::draft("my_cv.Rmd", template = "hyndman", package = "vitae")
-
Edit the R Markdown file with your CV content, using the provided functions like
detailed_entries()
to format your information. -
Knit the document to produce your CV in PDF or HTML format.
Competitor Comparisons
:page_facing_up: Awesome CV is LaTeX template for your outstanding job application
Pros of Awesome-CV
- More visually appealing and modern design options
- Extensive customization possibilities with LaTeX
- Includes cover letter and CV templates
Cons of Awesome-CV
- Steeper learning curve for users unfamiliar with LaTeX
- Less integration with data sources and programming languages
Code Comparison
Awesome-CV (LaTeX):
\documentclass[11pt, a4paper]{awesome-cv}
\name{Your}{Name}
\position{Your Job Title}
\address{Your Address}
\mobile{Your Phone Number}
vitae (R):
library(vitae)
cv <- cv_document()
cv_entries(
tibble::tribble(
~what, ~when, ~with, ~where,
"Job Title", "2020-Present", "Company Name", "City, Country"
)
)
Key Differences
- Awesome-CV uses LaTeX for document creation, while vitae uses R
- vitae integrates better with data manipulation and analysis workflows
- Awesome-CV offers more control over visual design elements
- vitae provides easier integration with existing R data structures
Use Cases
- Choose Awesome-CV for highly customized, visually striking CVs
- Opt for vitae when working with R-based data or requiring frequent updates
Yet another alternative curriculum vitae/résumé class with LaTeX
Pros of AltaCV
- More visually appealing and modern design
- Greater flexibility in layout customization
- Supports multiple color schemes out of the box
Cons of AltaCV
- Steeper learning curve for LaTeX beginners
- Less integration with R and data-driven CV generation
- Requires more manual input and formatting
Code Comparison
AltaCV:
\documentclass[10pt,a4paper,ragged2e,withhyper]{altacv}
\geometry{left=1.25cm,right=1.25cm,top=1.5cm,bottom=1.5cm,columnsep=1.2cm}
\usepackage{paracol}
\begin{document}
\name{Your Name}
\tagline{Your Job Title}
\photo{2.8cm}{picture}
vitae:
library(vitae)
cv_data <- read_csv("cv_data.csv")
cv <- create_cv(cv_data)
export_cv(cv, "my_cv.pdf")
The code comparison shows that AltaCV uses LaTeX directly for CV creation, while vitae leverages R for data-driven CV generation. AltaCV offers more control over layout and design, but vitae simplifies the process by using data structures and R functions.
:necktie: A collection of cv and resume templates written in LaTeX. Leave an issue if your language is not supported!
Pros of latexcv
- Offers multiple pre-designed templates for different CV styles
- Provides a clean, professional LaTeX-based output
- Includes sample content to help users get started quickly
Cons of latexcv
- Requires LaTeX knowledge for customization
- Limited to static PDF output format
- Less flexibility in data input compared to R-based solutions
Code Comparison
latexcv:
\documentclass[10pt,a4paper,roman]{altacv}
\usepackage{paracol}
% ...
\begin{document}
\name{Your Name Here}
\tagline{Your Position or Tagline Here}
\photo{2.8cm}{profile.png}
\personalinfo{
\email{your@email.com}
\phone{000-00-0000}
\location{Your City, Country}
\linkedin{your-linkedin-profile}
\github{your-github-account}
}
vitae:
library(vitae)
cv_data <- tribble(
~title, ~unit, ~startYear, ~endYear,
"Position", "Company", 2018, 2020,
"Degree", "University", 2014, 2018
)
cv_entries(cv_data)
Both repositories provide tools for creating professional CVs, but they differ in their approach. latexcv offers ready-to-use LaTeX templates, while vitae provides an R-based framework for generating CVs programmatically. The choice between them depends on the user's preference for LaTeX or R, and the desired level of customization and data management.
Convert
designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual CopilotREADME
vitae 
/ËviËteɪ/
Templates and tools for making a Résumé/CV
The vitae package makes creating and maintaining a Résumé or CV with R Markdown simple. It provides a collection of LaTeX and HTML templates, with helpful functions to add content to the documents.
Installation
You can install the release version from CRAN.
install.packages('vitae')
You can install the development version from GitHub.
# install.packages("remotes")
remotes::install_github("mitchelloharawild/vitae")
This package requires LaTeX to be installed on your computer. If youâre encountering issues, please check that LaTeX is installed. The tinytex package makes it easy to setup LaTeX within R:
install.packages('tinytex')
tinytex::install_tinytex()
Getting started
The vitae package currently supports 6 popular CV templates. You can see some previews of the available templates below.
If you prefer a guided introduction in video form, check out Bryan Jenksâ freeCodeCamp tech talk:
Creating a new CV with vitae
can be done using the RStudio R Markdown
template selector:
These templates leverage the strength of rmarkdown to include common
information in the YAML header (name, position, social linksâ¦) and
extended information in the main body. The main body of the CV is
written using markdown, and allows for data-driven generation of entries
using the *_entries
functions.
This allows you to import your working history from other sources (such
as ORCID, Google Scholar, or a maintained dataset), and include them
programmatically into your CV.
Templates
There are currently 6 templates available in this package:
vitae::awesomecv | vitae::hyndman |
---|---|
![]() | ![]() |
vitae::latexcv | vitae::markdowncv |
---|---|
![]() | ![]() |
vitae::moderncv | vitae::twentyseconds |
---|---|
![]() | ![]() |
Extending the package to add new templates is a somewhat simple process (details in the creating vitae templates vignette).
Examples of using vitae
- Mitchell OâHara-Wild
- Rob Hyndman
- Eric R. Scott
- Nat Price
- Sam Abbott (automatic deployment!)
- JooYoung Seo (printing multiple bibliographic entries according to a given csl file)
- Diogo M. Camacho
- Han Zhang (custom csl files)
- Bryan Jenks
- Lorena Abad
- Lampros Sp. Mouselimis (using Github Actions and a docker image to programmatically generate the CV file)
- Adam Kirosingh
- Marco Lombardi
- Anthony Romero
- André Calero Valdez This version uses a database to manage the content and automatically updates the content once a week using Github actions. PDF is then added as a release after rendering. Also uses a forked version of the package to remove the trailing dot in brief entries.
Add your vitae to the list using a PR.
Please note that the âvitaeâ project is released with a Contributor Code of Conduct. By contributing to this project, you agree to abide by its terms.
The vitae project began as at rOpenSciâs OzUnconf 2018. A big thank you to rOpenSci and the event organisers for their work, which has played a big role in the formation of this package.
Top Related Projects
:page_facing_up: Awesome CV is LaTeX template for your outstanding job application
Yet another alternative curriculum vitae/résumé class with LaTeX
:necktie: A collection of cv and resume templates written in LaTeX. Leave an issue if your language is not supported!
Convert
designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual Copilot