Generates a static resume HTML from src/resume.json using the jsonresume-theme-professional theme, post-processes it, and publishes via GitHub Pages.
src/resume.json— your data. Add awebsitestring toworkorprojectsentries to create links.src/generate-resume.js— renders the theme, fixes fonts, injects base font size, and uses Cheerio to add links..github/workflows/pages.yml— CI workflow that builds and deploys thesite/artifact.
Install dependencies (including dev deps required by the theme):
npm install --include=devGenerate the resume HTML:
npm run generate
# generates: src/resume.htmlOpen src/resume.html to preview.
- Work entries: when
websiteis set, the script wrapswork.positionin an<a>tag. - Project entries: when
websiteis set, the script wrapsprojects.namein an<a>tag. - Links are styled with
style="color:inherit;text-decoration:none;"so they blend with the text.
If this repo is named <user-name>.github.io, GitHub Pages will serve the site at:
https://<user-name>.github.io/
The workflow copies src/resume.html → site/index.html and includes fonts/ so the site works from the root path.
- If a link doesn't appear: confirm
websiteis set and inspectsrc/resume.htmlto see where the theme rendered the title. Adjust selectors insrc/generate-resume.jsif needed. - If rendering fails: install devDeps (
react,styled-components,@babel/*) and re-run the generator.
npm install --include=dev
npm run generateShort and ready — tell me if you want a one-line badge or a hosted preview instruction added.
Shoutout to Thomas Davis for the excellent jsonresume-theme-professional theme: