{"owner":"markmead","repo":"hyperui","hasSkills":true,"hasMcp":false,"mcpConfig":null,"found":["CLAUDE.md"],"files":{"CLAUDE.md":"# CLAUDE.md\n\nThis file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.\n\n## Tech Stack\n\nTailwind CSS v4, Astro 6, Cloudflare Pages (via Wrangler), Playwright (E2E tests). No package to install for end users — this repo is the documentation site for the component library.\n\n## Commands\n\n```bash\npnpm dev                          # start dev server (also runs wrangler types first)\npnpm run css:component --watch    # compile component preview CSS (run alongside dev)\npnpm run css:blog                 # compile blog CSS (one-off)\npnpm build                        # production build\npnpm test                         # run Playwright E2E tests (requires dev server running)\npnpm lint                         # ESLint\npnpm format                       # Prettier\npnpm run generate:git-metadata    # regenerate src/data/git-metadata.json from git history\n```\n\n## Architecture\n\n### Content Collections\n\nComponents are defined in MDX files under `src/content/collection/{application,marketing,neobrutalism}/`. Each MDX file's frontmatter declares the collection metadata and a `components` array — each entry in that array corresponds to a numbered HTML file. The MDX body is minimal (typically just a `<BaseHero>` import).\n\nThe three categories map to Astro content collections defined in `src/content.config.ts`, which also reads `src/data/git-metadata.json` to attach `updated` (commit + date) metadata to each collection entry.\n\n### Component HTML Files\n\nThe actual component markup lives in `public/examples/{category}/{slug}/{n}.html` (light) and `public/examples/{category}/{slug}/{n}-dark.html` (dark). These are standalone HTML pages loaded in iframes by the `<component-preview>` custom element.\n\nDark variants can be generated using the browser-based dark mode generator tool at `/tools/dark-mode-generator`.\n\n### Preview System\n\n`ComponentPreview.astro` defines a `<component-preview>` custom element. Preview controls (breakpoints, copy, view toggle, direction) are separate custom elements that communicate with `<component-preview>` via namespaced `CustomEvent`s on `document`, keyed by the component's src path (e.g., `preview:copy:/examples/application/accordions/1.html`).\n\n### Page Routing\n\n- `/components/{category}` → `src/pages/components/{category}/index.astro`\n- `/components/{category}/{slug}` → `src/pages/components/{category}/[...slug].astro` → `ComponentPost.astro` layout\n- `/blog/{slug}` → MDX content from `src/content/blog/`\n\n### Adding a New Component\n\n1. Add an entry to the `components` array in the relevant MDX file under `src/content/collection/`.\n2. Create the corresponding HTML file(s) in `public/examples/{category}/{slug}/`.\n3. If dark mode is supported, add `dark: true` to the frontmatter entry and provide a `{n}-dark.html` file.\n\n## PR Title Format\n\n```\n<Feature|Bugfix|Update|Epic> - Description in sentence case\n```\n"}}