Skip to content

tedski/tedski.github.io

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

tedski.github.io

Deploy Built with Hugo Theme PaperMod Hosted on GitHub Pages PDF via Pandoc

Source for tedski.net - a Hugo site with a PaperMod theme, auto-deployed to GitHub Pages on push to main.

How it works

The build pipeline has three jobs:

generate-pdf runs in the pandoc/extra container, which ships with a full TeX Live installation. It registers the bundled OpenType fonts with fontconfig, then uses Pandoc with a custom XeLaTeX template (pandoc/resume-template.tex) to render content/resume.md into a styled PDF. A Lua filter (pandoc/strip-hugo-content.lua) strips Hugo-specific content (the download link, name heading, and contact line) before rendering; those are handled by the LaTeX template directly via frontmatter variables defined in pandoc/defaults.yml. The PDF is passed to the next job as a GitHub Actions artifact.

build checks out the repo, downloads the PDF artifact into static/, and runs hugo --minify. The PDF ends up at /Resume-TedStrzalkowski.pdf in the built site automatically.

deploy pushes the built site to GitHub Pages. Gated to main branch only. Feature branches run generate-pdf and build for validation but skip deploy.

The resume is a single source of truth: one markdown file serves both the Hugo page and the PDF. Hugo-specific shortcodes are filtered out by the Lua filter at PDF build time.


Runbook

Fresh clone:

git submodule update --init --recursive

Local preview:

hugo server -D

Deploy: push to main. Actions handles the rest.

Add a blog post:

hugo new blog/my-post-title.md
# write the thing, flip draft: false when ready
git add . && git commit -m "post: my-post-title" && git push

GitHub Pages settings: Settings → Pages → Source: GitHub Actions, custom domain: tedski.net.

DNS: A records point to GitHub's IPs (185.199.108-111.153), CNAME www → tedski.github.io. Already configured; don't touch unless migrating.

Static files: anything in static/ is available at the root of the built site.

About

Hugo site for tedski.net.

Resources

Stars

Watchers

Forks

Contributors