CLAUDE.md

CLAUDE.md

This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.

What this site is

A personal academic website for Mikel Landajuela, built on the Academic Pages Jekyll theme (forked from Minimal Mistakes). It is hosted on GitHub Pages at https://landajuela.github.io.

Local development

# Install dependencies (one-time)
bundle install

# Serve locally with live reload
bundle exec jekyll serve

# Build without serving
bundle exec jekyll build

The site builds to _site/ (gitignored). _config.yml changes require a server restart.

Content architecture

Content lives in two parallel systems that must stay in sync manually:

  1. Collection files (_talks/*.md, _publications/*.md, _teaching/*.md, _portfolio/*.md) — individual item pages with YAML front matter. Each file generates a standalone URL under /:collection/:slug/.

  2. Hand-curated page files (_pages/publications.md, _pages/cv.md, etc.) — Markdown pages that list items with custom HTML/CSS formatting. These are not auto-generated from the collection files; they are maintained independently.

The publications list in _pages/publications.md is the canonical display location — it uses inline HTML for citation formatting with author highlighting (<strong><span style="color:#c47a00;">M. Landajuela</span></strong>).

Key files

FilePurpose
_config.ymlSite-wide settings, author profile, plugins
_data/navigation.ymlTop navigation bar links
_pages/about.mdHomepage (permalink: /)
_pages/publications.mdFull publications list
_pages/cv.mdCV page with education/experience
_pages/research.mdResearch overview
_pages/awards.mdAwards page
images/Profile photo and other images
cv/PDF CV files
resume/PDF resume files
awards/PDF award certificates

Adding content

New talk:

---
title: "Talk Title"
collection: talks
type: "Talk"           # or "Keynote", "Poster"
talk_type: "Talk"
permalink: /talks/YYYY-MM-DD-slug
venue: "Conference Name"
date: YYYY-MM-DD
location: "City, Country"
---
Body text here.

New publication: Add directly to _pages/publications.md using the existing citation HTML pattern. The _publications/ collection files exist but the curated page is what’s shown.

New top nav tab: Add a file to _pages/ with appropriate front matter, then add an entry to _data/navigation.yml.

Styling conventions

  • Author name highlighted in gold: <strong><span style="color:#c47a00;">M. Landajuela</span></strong>
  • Conference badge: <span style='border:4px rgb(255, 179, 0) solid; display: inline-block;'><strong>VENUE YEAR</strong></span>
  • Spotlight/Oral badge: <span style='background-color: rgb(255, 179, 0); display: inline-block;'><strong>Spotlight</strong></span>
  • SCSS lives in _sass/; layouts in _layouts/; partials in _includes/

Deployment

Push to master — GitHub Pages builds and deploys automatically. There is no CI configuration; the live site updates within minutes of a push.