This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
npm run serve # Start local dev server with hot-reload
npm run build # Build static site to _site/
No test suite is configured.
Requires a .env file with Contentful credentials:
CTFL_SPACE=<space_id>
CTFL_ACCESSTOKEN=<access_token>
Eleventy (11ty) static site driven by Contentful CMS. Content is fetched at build time from Contentful and rendered into static HTML using Liquid templates.
_data/*.js files fetch from Contentful at build time → Liquid templates consume the data → Eleventy outputs _site/.
_data/index-page.js → "resources" content type (home page)_data/stories.js → "story" content type (ordered by creation date)_data/issueonecontributors.js → "contributor" content type (Issue One commissions)_data/about-page.js → "aboutPage" content type.eleventy.jsThe main Eleventy config file is large (~436 lines) and contains most application logic:
cssmin (CSS minification), hexToRgb, lookUpColour, lookUpColourBackground (color palette lookups for contributor/story theming)documentToHtmlString, contributorHero, contributorBody, glossaryItem, readingListItem, footer, nav, etc.Root-level .liquid files are pages; _includes/ contains layout and shared components:
_includes/layout.liquid — main HTML wrapper used by all pagesstories-story.liquid — individual story pages (uses Eleventy pagination over stories data)chapterone.liquid — contributor listing pageglossary.liquid — glossary and reading list pagePlain CSS, no framework. Files in _includes/:
main.css — primary stylesreset.css — CSS resetstorycolors.css — per-story color themingCSS is minified at build time via the cssmin filter.
src/assets/ contains static files copied to the build output. src/_redirects is a Netlify redirects file.
Uses @11ty/eleventy-img for AVIF/JPEG generation; cached images land in img/ and .cache/.