Tracking how my resume changes using JSONresume. Feel free to fork or copy my github workflows and watch github actions automatically validate and build your resume on release.
Inspired by the resumake.io website and created out of the desire to make an automatic latex resume build system utilizing git version control.
The latest pdf build can be downloaded here
- Fork the repo
- Click on the actions tab of the forked repo and enable actions
- Click on the settings tab, go to actions->general on the sidebar, scroll down to workflow permissions, set to "Read and write permissions", and save.
- Make desired changes to the
resume.json
file and/ortemplate.tex.erb
- Click on the Releases sidebar on your Github fork, draft a new release, add a tag like
0.0.1
and click "Publish release". Your generated pdf will appear in the assets section of the release in around 2.5 minutes.
Make a release every time that you want to publish a new version of your resume. You can then download the pdf from the assets section or have a permanent link to the latest release with a url of the format https://github.com/{yourUsername}/resume/releases/latest/download/{yourUsername}_resume.pdf
where {yourUsername}
is replaced with your Github username.
The content of the resume is stored in the resume.json
file, following the schema defined by jsonresume.org. When a release is created, the release.yml
workflow is ran.
The following are the steps taken by release.yml
:
- Validates json resume using lukew3/validate-json-resume-action.
- Fill
template.tex.erb
with contents ofresume.json
using lukew3/json-fill-erb-action. resume.tex
which was created by step 2 is built toresume.pdf
with xu-cheng/latex-action.- The resulting pdf is uploaded to the latest release with the file name
{username}_resume.pdf
.
The release workflow will automatically build a pdf on release. If you want to render locally, you can use the build.rb
file here and then run pdflatex resume.tex
.