Skip to content

[WORK IN PROGRESS!] An API to turn a resume.json gist into a resume.pdf using contributed themes

Notifications You must be signed in to change notification settings

marcopist/jsume

Repository files navigation

Code style: black

resume.json → resume.pdf

[TOTALLY A WORK IN PROGRESS!] It does work. But kind of. And everything might get completely reengineered at any point. 🙃

Use with caution for now.

What it does

As simple as:

  • Save your resume as a resume.json gist on Github;
  • Make sure it conforms to this schema;
  • Choose the theme you want to use by setting your $.meta section in your resume.json like this:
    {
        "meta" : {
            "author" : "{theme-author-name}",
            "name" : "{theme-name}"
        }
        ...
    }
    
  • Go to cv.marcopist.com/{your-github-username}
  • Find your cv rendered as a PDF, enjoy!

What an example looks like

How to contribute

Make new themes!

Check out my example theme: marcopist/basic.jinja. Themes are Jinja templates in HTML. Feel free to add a CSS section in the <style> tags in the <head>.

Contribute to the service

Simply make a pull request. I will review it. See the tech specs below on some general architecture notes.

There is continuous integration that runs the unit testing suite whenever any pull request is submitted. See /tests/Dockerfile and .github/workflows/run-tests.yaml for details.

Service architecture & design

This is a containerised application (see /Dockerfile). Using containers is made necessary by the fact that this application has dependencies that cannot be declared within setup.cfg or pyproject.toml; the main one being wkhtmltopdf, which is allows the generation of a PDF from HTML.

Similarly, the unit testing suite is containerised (see /tests/Dockerfile) as it requires imagemagick to compare PDFs pixel-wise - in addition to wkhtmltopdf to generate them.

This service is deployed to Google Cloud Run. Continuous Deployment is activated, so on every push to main the container is re-built & deployed.

Unit testing is run at every pull request using Github workflows (see /tests/Dockerfile and /.github/workflows/run-tests.yaml).

About

[WORK IN PROGRESS!] An API to turn a resume.json gist into a resume.pdf using contributed themes

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published