CLAUDE.md

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

Commands

Run the site locally with livereload:

bundle install
bundle exec jekyll serve --livereload

Run Playwright tests:

npx playwright test                  # all browsers (chromium, firefox, webkit)
npx playwright test tests/example.spec.ts          # single file
npx playwright test -g "has title"                 # single test by name
npx playwright show-report           # open the last HTML report

Playwright has no webServer configured, so the dev server must be running separately (or tests must target an absolute URL). The current tests/example.spec.ts is the Playwright scaffold pointing at playwright.dev — real tests have not been written yet.

Architecture

Jekyll 3.9 static site deployed to GitHub Pages (CNAME → getpersonalbest.com). Output is built to _site/ and committed; _site/ is also gitignored at the top level — Pages builds from source on push.

Page model:

CLAUDE.md | Personal Best

` tag from jekyll-seo-tag (a github-pages plugin) — page metadata comes from front matter, and the default social image is set via the defaults block in _config.yml.

Styling:

Content pages live at the repo root as .markdown files with explicit permalink: front matter (/press, /redeem, /privacy-policy). New top-level pages should follow the same pattern rather than relying on filename-based URLs.

Gotchas