CLAUDE.md
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
Project Overview
Personal academic portfolio for Peeter Laas (PhD, molecular ecology / environmental microbiology), hosted on GitHub Pages at https://peeterlaas.github.io.
Deployment
No local build step is needed. GitHub Pages automatically runs Jekyll on push to main. To deploy changes:
git add <files>
git commit -m "message"
git push
Architecture
The site recently migrated from a multi-page Jekyll structure to a single-file SPA. All visible content and client-side navigation logic now lives in index.html. The six sections (Home, Current Work, Past Work, Education, Events & Honours, Gallery) are rendered and switched via vanilla JavaScript — no framework involved.
index.html— entire site content and JS navigation logicassets/css/style.scss— dark-mode overrides for the Minima Jekyll theme (uses CSS variables, teal accent#5eb8a0)assets/images/— fieldwork and lab photo galleriesassets/CV_2026-02-15.pdf— current CV_layouts/default.html— minimal Jekyll layout wrapper inheriting from Minima base_config.yml— Jekyll config: theme, plugins (seo-tag, feed, sitemap, gist), kramdown/Rouge
Key Notes
_config.ymlstill listsheader_pagesreferencing deleted.mdfiles (education.md, current-work.md, etc.) — these were removed during the SPA migration and the config entry is now a no-op.- Google Fonts used: DM Serif Display, DM Mono, Jost.
- No JavaScript dependencies or package manager — pure vanilla JS/CSS.
.claude/settings.local.jsonpre-authorizes common git operations.