Sina Atalay

RenderCV

2023 – present

Sina Atalay

The user experience of writing a CV has traditionally been painful.

You have two main choices:

  1. Word processors like Google Docs or Microsoft Word
  2. Typesetting tools like LaTeX or Typst

The first option is frustrating. Every time you change the content, you risk breaking the layout or messing something else up. Getting the formatting right in the first place is tedious.

The second option is usually overkill. It requires boilerplate and setup, and once you've written your CV, tweaking the design is really hard.

Writing a CV should be simple:

Neither mainstream option offers this workflow. In both cases, design and content are tangled together, making iteration painful.

I thought I could improve this experience, so I built RenderCV, a CLI application written in Python.

Write your CV as YAML:

cv:
  name: John Doe
  location: San Francisco, CA
  email: john.doe@email.com
  website: https://rendercv.com/
  social_networks:
    - network: LinkedIn
      username: rendercv
    - network: GitHub
      username: rendercv
  sections:
    education:
      - institution: Princeton University
        area: Computer Science
        degree: PhD
      ...

Then run RenderCV:

rendercv render John_Doe_CV.yaml

and get a PDF with perfect typography.

Then, play with your design until you’re happy:

design:
  theme: classic
  page:
    size: us-letter
    top_margin: 0.7in
    bottom_margin: 0.7in
    left_margin: 0.7in
    right_margin: 0.7in
    show_footer: true
    show_top_note: true
  colors:
    body: rgb(0, 0, 0)
    name: rgb(0, 79, 144)
    headline: rgb(0, 79, 144)
    connections: rgb(0, 79, 144)
    section_titles: rgb(0, 79, 144)
    links: rgb(0, 79, 144)
    footer: rgb(128, 128, 128)
    top_note: rgb(128, 128, 128)
  typography:
    line_spacing: 0.6em
    alignment: justified
    date_and_location_column_alignment: right
    font_family: Source Sans 3
  # ...and much more

Ultimately, you get PDFs like these.

Classic Theme Example of RenderCV Engineeringresumes Theme Example of RenderCV Sb2nov Theme Example of RenderCV
Moderncv Theme Example of RenderCV Engineeringclassic Theme Example of RenderCV Custom themes can be added.

Since launch, RenderCV has gained 15,000+ GitHub stars and 140,000+ downloads on PyPI.

We also built a web app at app.rendercv.com that runs RenderCV via WebAssembly. It has 8,000+ monthly active users.

GitHub Repository: github.com/rendercv/rendercv
Documentation: docs.rendercv.com