This project lets me build my current static resume.
Find it at ccjmne.github.io/resume or ccjmne.sh/resume.
This generates some HTML pages, printed out to PDF with Puppeteer.
Technologies used:
Packaged as a fairly standard NodeJS process (using pnpm);
Published automatically through Continuous Deployment, leveraging GitHub Actions.
Install with pnpm install.
Continuously watch-rebuild with pnpm start (or pnpm dlx vite) during development;
Perform a one-off compilation with pnpm run build (or pnpm dlx vite build).
The output (and the intermediary HTML-CSS-JS assets) will be generated under dist/.
The following environment variables can be set to customise the build:
-
HYPHENATE- whether to automatically insert soft-hyphens wherever applicable
- enabled with any value starting with
y; defaults tono - disabled by default with
productionbuilds, for having­littered throughout each and every word isn't quite SEO-friendly, and might even throw off ATSes
-
OUTPUT- the name of the output file, defaults to
ccjmne-resume.pdf - generate screenshot if output ends in
.png; otherwise coerce extension to.pdf
- the name of the output file, defaults to
-
BROWSER_KEEPALIVE- how long to keep the spawned browser instance alive (for successive reprints), in milliseconds
- defaults to
30000(30 seconds) in development mode, and0in production
-
BROWSER_EXECUTABLE- the path to the Chromium executable to use
- if unspecified, it'll use the first of these found on your
$PATH:chrome-headless-shellchromiumchromium-browsergoogle-chrome-stablegoogle-chrome
There is nothing to do, this process is automated.
With each newly published release on GitHub, GitHub Action pipeline will:
- check out the repository,
- install its dependencies if not cached already,
- verify adequate hyphenation by generating and comparing two screenshots:
- with automated soft-hyphenation for the
en-GBlocale - without the above
- with automated soft-hyphenation for the
- generate the PDF document, and
- publish it with GitHub Pages at ccjmne.github.io/resume and ccjmne.sh/resume.
GPL-3.0
You may copy, distribute and modify the software as long as you track changes/dates in source files. Any modifications to or software including (via compiler) GPL-licensed code must also be made available under the GPL along with build & install instructions.
Refer to the LICENSE file for more details.