Source for the lab website / blog. Built with Jekyll, hosted on GitHub Pages.
- Create
_posts/YYYY-MM-DD-short-slug.md, using an existing post as a reference. The filename date is the publish date and becomes part of the URL:/blog/YYYY-MM-DD-short-slug/. - Fill in the front matter (
title,authors, optionaltldr,image,links) and setpublished: truewhen the post is ready to publish. - Put images in
assets/posts/YYYY-MM-DD-short-slug/and reference them as{{ '/assets/posts/YYYY-MM-DD-short-slug/fig.png' | relative_url }}. - Markdown, LaTeX (
$...$,$$...$$,\begin{equation}), fenced code, and raw HTML all work. - Open a PR against
main. Once merged, GitHub Pages rebuilds in ~1–2 min.
Whole-post HTML: name the file .html instead of .md, keep the front matter.
Requires Ruby ≥ 3.1 (brew install ruby on macOS — avoid the system Ruby).
bundle install
bundle exec jekyll serve --livereload
# → http://127.0.0.1:4000For work in progress, create _drafts/ and add posts without date prefixes.
Add --drafts to preview them locally; normal builds omit drafts.
_config.yml site settings, permalink style, math engine
_layouts/ default.html (shell), post.html, page.html
_includes/ authors.html (author list), mathjax.html
_posts/ published posts
blog/index.html post list
people/index.md lab members
index.md landing page
assets/style.css all styling
assets/posts/<slug>/ per-post images
CNAME custom domain (created by GitHub when you set it; don't delete)
_config.yml → url: must match the live domain so RSS/SEO links are right.
DNS and HTTPS are configured in the repo's Settings → Pages.