ModernCV from JSONResume

About this converter

This converter allows for generating PDF files using moderncv and JSON Resume schema. A full documentation may be written at a later point but is not deemed necessary right now, as the usage will be explained in this README.


To use this converter, clone this repository using git clone or just download the ZIP file. This converter does not require any tools outside of the vanilla Python 3.x. That being said, it is not built to be compatible with Python 2.x.

After downloading the repository, substitute the default (resume.json)[resume.json] file with your own file. Then, run python, or execute the main class in the IDE of your choice. Now, the script should generate a resume.pdf file, which is your beautiful new resume.

As long as your file is compliant with the JSON Resume schema, and you have Latexmk, it should work without any issues.

External pictures

The software handles external pictures automatically. All picture descriptions starting with "http://" or "https://" are firstly downloaded to the local directory, and then the external URLs are converted to local, relative URIs, which can be easily retrieved by LaTeX.


To customize the output, edit the file.

Available customizations are: (default values in bold)

Color Font Font size Paper size Style
blue roman 10pt a4paper fancy
green sans 11pt a5paper classic
red 12pt b5paper casual
orange letterpaper
grey legalpaper

Customization examples

To override default values, run with arguments for which you want non-default values, eg., for orange color, roman font, 12pt, letter paper, and casual style:

python --color orange --font roman --font_size 12 --paper_size letterpaper --style casual

Any omitted values will take default values. To display possible values in the console, run:

python --help

nb! It is possible that your python command refers to a python version 2.x. In that case run python3 to force python version 3.x.

Further development

There are currently no further development plans. However, should either JSONResume or ModernCV undergo breaking changes, the repository will be updated to fix compatibility.

See the repository on GitHub