diff --git a/.claude/CLAUDE.md b/.claude/CLAUDE.md index 943f323..9592b49 100644 --- a/.claude/CLAUDE.md +++ b/.claude/CLAUDE.md @@ -39,6 +39,7 @@ components/ RecipeGridCard.tsx # Recipe grid card for listing page RecipeTabs.tsx # Tabbed recipe sections (client) RecipeMarkdown.tsx # Renders a parsed markdown tree to React (server) + markdown-styles.ts # Shared body typography classes (recipe tabs, About page) RecipeCardPanel.tsx # Recipe Card tab: card image previews (server) RecipeCardImage.tsx # Card preview that enlarges to full screen on click (client) RecipePageLayout.tsx # Recipe detail page layout (server component) diff --git a/.claude/rules/architecture.md b/.claude/rules/architecture.md index a5a83af..c02a829 100644 --- a/.claude/rules/architecture.md +++ b/.claude/rules/architecture.md @@ -18,4 +18,5 @@ - Card fonts are read from `node_modules/@fontsource/*` at build time; satori needs woff/ttf (not woff2) and doesn't support variable fonts - `lib/recipes.ts` uses Node.js `fs` — server-side only; never import in client components - Build warnings about `` vs `` in RecipeMarkdown and RecipeCardImage are intentional +- The About page is hand-written JSX, not markdown; it shares body typography with recipe tabs through `MARKDOWN_BODY_CLASSES`. Change spacing there rather than per page. Class strings must live in `components/` or `app/` — Tailwind doesn't scan `lib/` - Never add redundant ARIA roles on semantic elements (`
`, `