CLAUDE.md
CLAUDE.md
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
Project Overview
This is an academic personal website built with Jekyll using the Academicpages theme (forked from Minimal Mistakes). It’s deployed via GitHub Pages at https://cornwl.github.io.
Common Commands
# Install dependencies
bundle install
# Run local development server with live reload
bundle exec jekyll liveserve
# Run with development config (disables analytics, expanded CSS)
bundle exec jekyll serve --config _config.yml,_config.dev.yml
# Build JavaScript (if modifying JS)
npm run build:js
The site auto-deploys to GitHub Pages when pushing to master branch.
Architecture
Collections (content types with their own pages):
_teaching/- Course pages. Active courses at root, archived in_archive/subdirectory_publications/- Academic papers_talks/- Presentations and seminars_portfolio/- Project showcases_posts/- Blog entries
Key directories:
_pages/- Static pages (about, cv, etc.)_layouts/- Page templates (single.html, talk.html, etc.)_includes/- Partial templates (author-profile, footer, etc.)_sass/- SCSS stylesheets_data/navigation.yml- Top navigation menu configurationfiles/- Downloadable PDFs and documents (served at /files/filename.pdf)images/- Image assetsmarkdown_generator/- Python scripts to generate markdown from TSV/BibTeX
Content Frontmatter
Teaching pages use this frontmatter structure:
---
title: "COURSE NUMBER :: Course Title"
collection: teaching
type: "Undergraduate Course"
permalink: /teaching/YYYY-semester-COURSENUMBER
venue: "University of Georgia"
date: YYYY-MM-DD
---
All collections follow similar patterns with collection, permalink, and date fields.
Site Configuration
Main settings are in _config.yml. Changes to this file require server restart. Use _config.dev.yml for local development overrides.
Collections defaults (layouts, sharing, comments) are configured in the defaults: section of _config.yml.
