CLAUDE.md
CLAUDE.md
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
Commands
# Serve locally (standard)
bundle exec jekyll serve
# Serve with dev overrides (disables analytics, expands CSS, sets localhost URL)
bundle exec jekyll serve --config _config.yml,_config.dev.yml
# Live reload (uses the hawkins gem)
bundle exec jekyll liveserve --config _config.yml,_config.dev.yml
There are no tests. _site/ is the generated output directory — never edit it directly.
Architecture
This is a Jekyll static site using a heavily customised version of the Minimal Mistakes theme, hosted on GitHub Pages.
Key structural facts
The homepage (_pages/about.md) is the primary content file. It contains the full About, Publications, Talks, and Blog sections written as raw HTML, not Liquid templates. The _publications/ collection files exist but are not used for the main listing — they may be legacy artefacts.
Navigation (_data/navigation.yml) uses anchor links (#publications, #talks, etc.) that point to named anchors inside about.md, not separate pages.
Content directories:
_pages/— static pages rendered at their permalink_publications/— legacy collection, not rendered on the homepagefiles/— PDFs (slides, CV) linked from about.mdassets/images/publications/andassets/images/talks/— 50×50px thumbnails used in the homepage listings
Adding a publication or talk
Publications and talks follow a fixed HTML template in about.md. Each entry is a flex row: a 50×50px <img> thumbnail on the left, and a content <div> on the right containing:
<h3>with a link to the paper/talk<p>with the venue in italics<p>with the author list (<strong>around Andrew’s name)<p>with a one-sentence summary- A
<details>block with the full abstract
Section anchors use <a id="..." style="display: block; position: relative; top: -50px; visibility: hidden;"></a> for smooth scroll offset.
Typography and styling
- Primary font: Crimson Pro SC (serif), set in
_sass/_variables.scss - Small caps pattern:
<span class="small-caps">text</span>— used pervasively for acronyms (AI, LLM, NeurIPS, etc.) - Background:
#F8F6F1(warm off-white) - Custom overrides:
assets/css/custom.scss(currently only fixes hamburger menu colour) - SCSS source:
_sass/—_variables.scsscontrols fonts, colours, and breakpoints
Config files
_config.yml— production settings (Google Analytics placeholder, compressed CSS)_config.dev.yml— development overrides (localhost URL, expanded CSS, analytics disabled)
