Document weekly cleaning party roles (toilets, mop floors, kitchen, utility room, surfaces, sweep, vacuum, DJess) with checklists and room assignments. Link from shared responsibilities page. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2.3 KiB
CLAUDE.md
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
Project Overview
Castle Docs is a community documentation site for a collective farm and artist residency, built on Quartz v4.5.2 (a static site generator for markdown-based sites). Content is written in Markdown with Obsidian-flavored syntax. Published at docs.ariege.io.
Commands
npx quartz build --serve -d content # Dev server for site content
npm run docs # Dev server for Quartz framework docs (docs/ directory)
npm run check # Type checking + Prettier validation
npm run format # Auto-format with Prettier
npm test # Run tests (tsx --test)
npx quartz build # Production build (content/ directory)
Node 22+ and npm 10.9.2+ required (.node-version, .npmrc engine-strict).
Architecture
Content pipeline: Markdown files in content/ are processed through a three-stage plugin pipeline defined in quartz.config.ts:
- Transformers — parse markdown (remark/rehype), extract frontmatter, resolve links, syntax highlight, render LaTeX
- Filters — exclude drafts and unpublished content
- Emitters — generate HTML pages, search index, RSS, sitemap, OG images
Key configuration files:
quartz.config.ts— site settings, plugin pipeline, theme colors/fontsquartz.layout.ts— page layout (which components appear in header/body/sidebar)
Framework source (quartz/): TypeScript + Preact. Components are QuartzComponent types with optional CSS and client-side scripts. The build system uses esbuild with sass/lightningcss for styles.
Content Conventions
- Markdown with YAML frontmatter (
title,description,tags,draft) - Obsidian-flavored links:
[[page-name]]or[[page-name|display text]] - Callouts:
> [!warning],> [!danger],> [!tip], etc. - Ignored patterns:
private/,templates/,.obsidian/ - Dates default to git modified time; override with frontmatter
Code Style
- No semicolons, 100-char line width, trailing commas (Prettier config in
.prettierrc) - TypeScript strict mode
- ESM (
"type": "module")
Git Remote
Hosted on Forgejo at git.atitlan.io:padreug/castle-docs.git.