Convert Figma logo to code with AI

mrzool logocv-boilerplate

Programmatic generation of high-quality CVs

1,098
139
1,098
2

Top Related Projects

:page_facing_up: Awesome CV is LaTeX template for your outstanding job application

1,354

LaTeX template for my personal resume

A modern curriculum vitae class for LaTeX

2,821

:necktie: A collection of cv and resume templates written in LaTeX. Leave an issue if your language is not supported!

Resume,Resume Templates,程序员简历例句,简历模版,

Quick Overview

mrzool/cv-boilerplate is a LaTeX template for creating professional-looking CVs and cover letters. It provides a clean, minimalist design and uses the power of LaTeX and YAML for easy customization and content management. The project aims to simplify the process of creating and maintaining CVs and cover letters for job applications.

Pros

  • Easy to use and customize with YAML for content and LaTeX for styling
  • Clean and professional design out of the box
  • Separation of content and presentation for better maintainability
  • Includes both CV and cover letter templates

Cons

  • Requires LaTeX knowledge for advanced customization
  • May have a steeper learning curve for users unfamiliar with LaTeX or YAML
  • Limited built-in design variations compared to some other CV builders

Getting Started

  1. Clone the repository:

    git clone https://github.com/mrzool/cv-boilerplate.git
    
  2. Edit the details.yml file with your personal information and CV content.

  3. Customize the LaTeX template files (cv.tex and letter.tex) if needed.

  4. Compile the CV using XeLaTeX:

    xelatex cv.tex
    
  5. Compile the cover letter using XeLaTeX:

    xelatex letter.tex
    

The resulting PDF files will be generated in the same directory.

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
  • Includes additional sections like honors, publications, and presentations
  • Offers multiple color schemes and font choices

Cons of Awesome-CV

  • Steeper learning curve due to more complex LaTeX structure
  • Requires more customization to achieve a unique look
  • Larger file size and potentially slower compilation

Code Comparison

cv-boilerplate:

\documentclass[a4paper]{article}
\usepackage{fullpage}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{textcomp}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\textheight=10in
\pagestyle{empty}
\raggedright

Awesome-CV:

\documentclass[11pt, a4paper]{awesome-cv}
\geometry{left=1.4cm, top=.8cm, right=1.4cm, bottom=1.8cm, footskip=.5cm}
\fontdir[fonts/]
\colorlet{awesome}{awesome-emerald}
\setbool{acvSectionColorHighlight}{true}
\renewcommand{\acvHeaderSocialSep}{\quad\textbar\quad}

Both repositories provide LaTeX templates for creating professional CVs, but they differ in complexity and customization options. cv-boilerplate offers a simpler, more minimalist approach, while Awesome-CV provides a more feature-rich and visually striking template with additional sections and styling options.

1,354

LaTeX template for my personal resume

Pros of resume

  • Utilizes React and Next.js for a modern, interactive web-based resume
  • Offers easy customization through a JSON configuration file
  • Provides a responsive design out-of-the-box

Cons of resume

  • Requires knowledge of React and web technologies
  • May be overkill for simple resume needs
  • Less focus on print-friendly output compared to cv-boilerplate

Code Comparison

cv-boilerplate (LaTeX):

\documentclass[a4paper]{article}
\usepackage{hyperref}
\begin{document}
\title{Curriculum Vitae}
\maketitle
\end{document>

resume (React/JSX):

import { ResumeProvider } from '../context/ResumeContext'
import Layout from '../components/Layout'

function MyApp({ Component, pageProps }) {
  return (
    <ResumeProvider>
      <Layout>
        <Component {...pageProps} />
      </Layout>
    </ResumeProvider>
  )
}

The cv-boilerplate uses LaTeX for a traditional document-based approach, while resume employs modern web technologies for an interactive, customizable experience. cv-boilerplate may be more suitable for academic or research-focused CVs, whereas resume offers greater flexibility for web-based presentations and frequent updates.

A modern curriculum vitae class for LaTeX

Pros of moderncv

  • More comprehensive and feature-rich, offering multiple pre-designed templates
  • Actively maintained with regular updates and bug fixes
  • Larger community and more extensive documentation

Cons of moderncv

  • Steeper learning curve due to more complex structure and options
  • Less flexibility for customization compared to cv-boilerplate's minimalist approach
  • Requires more LaTeX knowledge to make significant modifications

Code Comparison

moderncv:

\documentclass[11pt,a4paper,sans]{moderncv}
\moderncvstyle{classic}
\moderncvcolor{blue}
\name{John}{Doe}
\title{Curriculum Vitae}

cv-boilerplate:

\documentclass[a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[default]{lato}
\usepackage[margin=1.5cm]{geometry}

The code snippets show that moderncv uses a specialized document class with built-in styles, while cv-boilerplate uses a more generic approach with standard LaTeX classes and packages. This reflects the different philosophies of the two projects, with moderncv offering a more structured, template-based solution and cv-boilerplate providing a minimalist foundation for customization.

2,821

: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
  • Includes sample content to help users get started quickly
  • Provides a more visually appealing and modern design out-of-the-box

Cons of latexcv

  • Less customizable than cv-boilerplate without modifying the template files
  • Requires more LaTeX knowledge to make significant changes to the layout
  • May have a steeper learning curve for users new to LaTeX

Code Comparison

cv-boilerplate:

\section{experience}
\begin{entrylist}
  \entry
    {since 2015}
    {Job Title}
    {Company Name}
    {Job description goes here}
\end{entrylist}

latexcv:

\begin{cvtimeline}
    \cvitem{2015--Present}{Job Title}{Company Name}{
        \begin{itemize}
            \item Job description goes here
        \end{itemize}
    }
\end{cvtimeline}

Both repositories provide LaTeX templates for creating CVs, but they differ in their approach. cv-boilerplate offers a minimalist, highly customizable foundation, while latexcv provides more structured, visually appealing templates with less flexibility. The code comparison shows that latexcv uses a more complex structure for entries, potentially offering more built-in formatting options at the cost of simplicity.

Resume,Resume Templates,程序员简历例句,简历模版,

Pros of awesome-resume

  • Offers a wide variety of resume templates and examples
  • Includes resources for different industries and job roles
  • Provides additional job search and interview preparation resources

Cons of awesome-resume

  • Less focused on customization and personal branding
  • May not offer as much control over the final output format
  • Requires more manual effort to create a resume from the provided examples

Code comparison

cv-boilerplate:

\documentclass[a4paper]{article}
\usepackage{fullpage}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{textcomp}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\textheight=10in
\pagestyle{empty}
\raggedright

awesome-resume:

# Your Name
## Job Title

### Contact Information
- Email: your.email@example.com
- Phone: (123) 456-7890
- Location: City, State

### Summary
A brief professional summary highlighting your key skills and experience.

Summary

cv-boilerplate is a LaTeX-based template for creating professional resumes, offering fine-grained control over formatting and layout. awesome-resume, on the other hand, is a collection of resume resources, templates, and examples in various formats, including Markdown. While cv-boilerplate provides a more technical approach for users comfortable with LaTeX, awesome-resume offers a broader range of options and guidance for different industries and experience levels.

Convert Figma logo designs to code with AI

Visual Copilot

Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.

Try Visual Copilot

README

CV Boilerplate

I consider LaTeX resumes to be a secret handshake of sorts, something that makes me significantly more likely to be inclined to hire a candidate.
zackelan on HN

A boilerplate to ease the pain of building and maintaining a CV or résumé using LaTeX.

Intro

The separation of content from presentation is considered a universal best practice. The typical content of a CV is a perfect fit for a YAML file due to its structured nature:

---
name: Friedrich Nietzsche
address:
- Humboldtstraße 36
- 99425 Weimar
- Prussia
email: friedrich@thevoid.de
# ...
experience:
- years: 1879--1889
  employer: Freiberufler
  job: Freier Philosoph
  city: Sils-Maria
- years: 1869–-1879
  employer: Universität Basel
  job: Professor für klassische Philologie
  city: Basel

That makes super easy to update a CV while keeping a consistent structure.

Thanks to pandoc, we can then access our data from template.tex using a special notation. Iterating on repetitive data structures becomes trivial:

$for(experience)$
  $experience.years$\\
  \textsc{$experience.employer$}\\
  \emph{$experience.job$}\\
  $experience.city$\\[.2cm]
$endfor$

LaTeX takes then care of the typesetting with its usual elegance. Below a preview of the final result. Check out the output to see the compiled PDF.

preview

With this method, you can keep your entire CV encoded in a single YAML file, put it under version control (into a gist, for instance), and generate a PDF on the fly when needed. You can also easily export it to other formats, like HTML for web publishing (I've heard Jekyll likes YAML). Convenient, portable and time-proof.

Dependencies

  1. LaTeX with the following extra packages: fontspec geometry multicol xunicode xltxtra marginnote sectsty ulem hyperref polyglossia
  2. Pandoc, the universal document converter.

I highly recommend TinyTeX as LaTeX distribution. All additional packages can be installed with tlmgr as needed.

Getting started

  1. Fill details.yml with your personal details, work experience, education, and desired settings.
  2. Run make to compile the PDF.
  3. Tweak on template.tex until you're satisfied with the result.

Note: this template needs to be compiled with XeTeX.

Note for Windows users

Although I didn't test it, you can probably use this on Windows, too. Both Pandoc and LaTeX can be installed on Windows and you should be able to run makefiles on Windows through Cygwin. If that's too much hassle, this command should do the trick in Powershell:

pandoc details.yml -o output.pdf --template=template.tex --pdf-engine=xelatex

Available settings

  • mainfont: Hoefler Text is the default, but every font installed on your system should work out of the box thanks to XeTeX.
  • fontsize: Possible values here are 10pt, 11pt and 12pt.
  • lang: Sets the main language through the polyglossia package. This is important for proper hyphenation, among other things.
  • geometry: A string that sets the margins through geometry. Read this to learn how this package works.

Recommended readings

Resources

  • TinyTeX is a lightweight, cross-platform, portable, and easy-to-maintain LaTeX distribution based on TeX Live.
  • Refer to pandoc's documentation to learn more about how templates work.
  • If you're not familiar with the YAML syntax, here's a good overview.
  • If you want to edit the template but LaTeX scares you, these docs put together by ShareLaTeX cover most of the basics and are surprisingly kind to the beginner.
  • Odds are your question already has an answer on TeX Stack Exchange. Also, pretty friendly crowd in there.

See also

License

This repository contains a modified version of Dario Taraborelli's cvtex template.

License: CC BY-SA 3.0