Skip to main content

CV Creator is an automated curriculum vitae (CV) generator which uses TOML templates.

Its primary usage is to standardize Expert Analytics’ (XAL) employee CVs, but it can be used for creating CV without the company branding for private use as well.

Installation

The main CV Creator tool is created in Python and can be install through pip. See this guide for help to get pip working on your system.

With this repository cloned to disk, and Python and pip in place, install CV Creator through:

pip install cvcreator

The tool depend on a working installation of Latex:

  • Windows – Install Miktex.

  • Debian/Ubuntu – run sudo apt-get install texlive-latex-extra texlive-lang-european.

  • Arch – run sudo pacman -Syu texlive-latexextra texlive-lang.

  • Mac OSX – Install Homebrew and run brew install --cask mactex.

Basic usage

Start by creating a simple example:

cv example example.toml

Edit the resulting example.toml file with your favorite text editor. This is the content file which will be inserted into the final CV output. The different sections should be self-explanatory.

With the content ready, create a CV with:

cv create example.toml my_new_cv.pdf

It will look something like this:

https://raw.githubusercontent.com/expertanalytics/cvcreator/master/example.jpg

Projects and publications

To include projects/publications use the flag --publications/--projects. These flags must be followed by specific tags present in the toml content file:

cv create example.yaml --projects "A1,A2"
cv create example.yaml --publications "P1,P2"

The projects/publications will be added in selected order. Alternatively, use a colon : to include all entries.

cv create example.yaml --publications :

Technology skills

To be able to do statistics on various skills, the list of allowed skills is limited to a predefined list. To quickly list what skills are allowed, and their spelling, see:

cv skills

In addition, some skills have badges that can be activated during document creation using the --badges flag with e.g. cv create and cv latex. To list which skill can produce an icon, see:

cv skills --badges

Adding new skills and badges

If a skill is missing, or a skill is written in an incorrect way, please either file an issue or make a request with the proposed change. In the latter case, the changes can be made to the file: cvcreator/data/tech_skills.toml.

In addition, if there is a badge that is missing (or needs replacing) here is useful checklist:

  • Find a badge candidate, consisting of simple pure black vector graphics formatted as a .pdf file. Be wary that some tools will convert vector graphics to raster when coverting.

  • There should not be any copyright issues with the badge. Most badges are currently CC0.

  • Place the badge in the folder cvcreator/icons.

  • Except for the .pdf extension, the name must exactly match that of the badge trigger. This means include capitalized letters and spaces.

Developer Guide

The project uses poetry to manage its development installation. Assuming poetry installed on your system, installing cvcreator for development can be done from the repository root with the command:

poetry install

This will install all required dependencies and cvcreator into a virtual environment. To enter the create environment, run:

poetry shell

Afterwards exit with:

exit

Testing

To ensure that the code run on your local system, run the following:

poetry run pytest --doctest-modules cvcreator/ test/

Deployment

Releases to PyPI (the repository used when using pip install) is created and deployed automatically when making a tagged released. To do so you need to:

  • Update and push a new version number in pyproject.toml to branch master.

After merging to master, the workflow creates the tag and Github release for this version and uploads its wheel file to Pypi.

Docker

Cvcreator can also be run in a docker container. To build the container image, run the following command from the repository root:

docker build -t cvcreator .

Example usage of running cvcreator in the docker container:

docker run --rm -v $(pwd):/data cvcreator create /data/example.toml /data/my_cv.pdf

This will mount the current working directory into the container at /data, and run the cvcreator command to create a CV from example.toml to my_cv.pdf.

If you want it even simpler (and always have to stand in the directory where your files are located), you can create an alias in your shell configuration file like this:

alias cvcreator='docker run --rm -v $(pwd):/data cvcreator'

Then you can run cvcreator commands as if it was installed on your system, e.g.:

cvcreator create /data/example.toml /data/my_cv.pdf

Metadata

Release files for cvcreator 1.1.18

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for cvcreator 1.1.18
File Interpreter ABI Platform
cvcreator-1.1.18-py3-none-any.whl Python 3 none any Details

Release files / cvcreator-1.1.18-py3-none-any.whl

Download URL cvcreator-1.1.18-py3-none-any.whl
Size 225.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2ac21a27fa860d143683a2e581d0b7d03c961c905e73fbe2a292343f38b07023
BLAKE2b-256 checksum
How to use checksums
cc428b0deff19e8879e79603fa36b97dd9979ba0dbd4e12bedef452c09461484
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release history Release notifications | RSS feed

This release

1.1.18 This release

1 release file

1.1.17

1 release file

1.1.15

1 release file

1.1.14

1 release file

1.1.12

1 release file

1.1.11

1 release file

1.1.10

1 release file

1.1.9

1 release file

1.1.5

2 release files

1.1.4

2 release files

1.1.3

2 release files

1.1.2

2 release files

1.1.1

2 release files

1.1.0

2 release files

1.0.6

2 release files

1.0.5

2 release files

1.0.4

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0

2 release files

0.4.9

2 release files

0.4.7

2 release files

0.4.6

2 release files

0.4.5

2 release files

0.4.4

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page