Skip to main content

Resumake

Generate resume using data representation objects in Python

Dependencies

  • python >= 3.10
  • pandoc
  • wkhtmltopdf
  • poppler-utils
  • fonts-roboto (or install the Roboto font family to your system)

Installation

Install package resumake from PyPI:

python3 -m pip install resumake

Usage

  • create .py file
  • import all from resumake.components:
    from resumake.components import *
    
  • create author variable and assign it an Author object
  • fill Author object parameters with info (see resume/cybardev.py)
  • run resumake.builder following examples below

Output of python3 -m resumake.builder -h:

usage: resumake.builder [-h] [-s SCHEMA] [-o OUTPUT] [-t HTML] [-c CSS]
                        [-m SIZE]
                        RESUME

Generate a resume from a given Python file containing data representation
objects

positional arguments:
  RESUME                path to the Python file containing the resume data

options:
  -h, --help            show this help message and exit
  -s SCHEMA, --schema SCHEMA
                        order of sections to display in the resume
  -o OUTPUT, --output OUTPUT
                        path to the output directory
  -t HTML, --template HTML
                        path to the HTML template file
  -c CSS, --css CSS     path to the CSS template file
  -m SIZE, --margin SIZE
                        top margin size

Examples

  • see default help message

    python3 -m resumake.builder -h
    
  • generate resume from example.py to current directory

    python3 -m resumake.builder example.py
    
  • generate resume from example.py to build/ directory

    python3 -m resumake.builder example.py -o ./build
    
  • generate resume from example.py to build/ directory using custom html and css templates

    python3 -m resumake.builder example.py -o ./build -t custom.html -c custom.css
    
  • generate resume from example.py with custom section order and omitting a default section (projects)

    python3 -m resumake.builder example.py -s "education, experience, skills"
    

Using GitHub Actions

Automatically generate your resume and publish it as a website

  • fork this repo
  • navigate to your fork
  • edit .github/workflows/update-resume.yml according to the TODO comments inside the file
  • rename resume/cybardev.py to have your GitHub username instead of cybardev
  • modify the renamed Python file to include your resume info
  • push changes to your fork

Extras

  • check Actions tab of your fork for workflow run details
  • configure custom domain (if desired) from Settings > Pages
  • to change order of sections or show/hide sections in resume, edit .github/workflows/update-resume.yml according to the TODO comment inside the file

Using Docker Container

Dependencies

  • docker
    • Docker Engine, at least; Docker Desktop optional

Installation

docker pull cybardev/resumake

Usage

  • make a resume directory at a suitable location
  • place resume .py script file in the resume directory
  • run the containerized application from within the resume directory as such:
    docker run --rm -v $PWD:/app/resume cybardev/resumake [args] <resume.py>
    
    • replace <resume.py> with the name of your resume .py script
    • for available [args], see main Usage and Examples sections above, or run it with the -h flag
      • NOTE: the -o flag shouldn't be used for the containerized application as it controls where the files are generated inside the container, not on your computer (move them manually after generation)
      • for template files, place them alongside the .py resume script and refer to them by their basename
  • resume .md, .pdf, and .png files will be generated adjacent to the .py file

PS: Since the command is so tedious to type, I suggest setting up a shell alias or function for ease of use. Make sure to replace $PWD with absolute path to the resume directory.

Sample Output

Source: resume/cybardev.py

resume

Metadata

Release files for resumake 3.1.6

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

Source distribution (sdist)

Source distribution for resumake 3.1.6
File Size Uploaded
resumake-3.1.6.tar.gz 21.3 kB Details

Built distribution (wheel)

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

Total release size: 44.4 kB

Release files / resumake-3.1.6.tar.gz

Download URL resumake-3.1.6.tar.gz
Size 21.3 kB
Tags Source
SHA-256 checksum
How to use checksums
9e8799dca05bdd8ed732819702dfbe6af076a92e19c9327eacd58e47e39616d8
BLAKE2b-256 checksum
How to use checksums
42e5bb4adbdadbb5f094ba0b010ea4052b91023587ca7598bbcbb0fdda737c89
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/4.0.2 CPython/3.11.8

Release files / resumake-3.1.6-py3-none-any.whl

Download URL resumake-3.1.6-py3-none-any.whl
Size 23.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
298f8a1df4cb79ed806d5279052297a0b039359902538fa5cdcd87b6f6839a2f
BLAKE2b-256 checksum
How to use checksums
468fb5c7131458385be7c725df394f5ba3b7989b0e94582eb6f095493f50ca99
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/4.0.2 CPython/3.11.8

Release history Release notifications | RSS feed

This release

3.1.6 This release

2 release files

3.1.5

2 release files

3.1.4

2 release files

3.1.3

2 release files

3.1.2

2 release files

3.1.1

2 release files

3.0.0

2 release files

2.0.0

2 release files

1.1.1

2 release files

1.1.0

2 release files

1.0.7

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.0

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