Skip to content

Commit cfbd91c

Browse files
authored
Merge pull request #222 from braboj/docs/claude-md-template-sync
docs(claude): sync CLAUDE.md with solid-ai-templates
2 parents 8463e24 + 30980ac commit cfbd91c

1 file changed

Lines changed: 68 additions & 0 deletions

File tree

CLAUDE.md

Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,15 @@ Key references:
77
- `docs/solid-ai-templates/base/git.md` — git workflow, branching, PRs
88
- `docs/solid-ai-templates/base/docs.md` — documentation rules, ADRs, writing style
99
- `docs/solid-ai-templates/base/quality.md` — SOLID, readability, code style
10+
- `docs/solid-ai-templates/base/typescript.md` — type design, naming, strictness
11+
- `docs/solid-ai-templates/base/issues.md` — issue templates (epic, task, bug, incident, spike)
1012
- `docs/solid-ai-templates/base/scope.md` — scope guard, session protocol
13+
- `docs/solid-ai-templates/base/quality-gates.md` — three-layer gate model
14+
- `docs/solid-ai-templates/frontend/ux.md` — UX principles, WCAG 2.1 AA, accessibility testing
15+
- `docs/solid-ai-templates/frontend/quality.md` — CSS conventions, performance, SEO
1116
- `docs/solid-ai-templates/frontend/static-site.md` — static site architecture
1217
- `docs/solid-ai-templates/stack/static-site-astro.md` — Astro-specific rules
18+
- `docs/solid-ai-templates/stack/static-site-tutorial.md` — tutorial site conventions
1319

1420
Project-specific overrides and additions follow below.
1521

@@ -263,6 +269,68 @@ rounded=1;whiteSpace=wrap;html=1;fillColor=#FFFFFF;strokeColor=#D3D1C7;strokeWid
263269
```
264270

265271

272+
### 2.7 TypeScript
273+
274+
Extends `docs/solid-ai-templates/base/typescript.md`:
275+
276+
- `strict` mode enabled via `"extends": "astro/tsconfigs/strict"`
277+
- Content schema defined in `astro-site/src/content.config.ts` using Zod
278+
- Follow `base/typescript.md` rules in all `.ts` files (remark plugins,
279+
content config, utility modules in `src/lib/`)
280+
- No `any` — use `unknown` and narrow, or define a proper type
281+
- Use `import type { ... }` for type-only imports
282+
283+
### 2.8 Accessibility
284+
285+
Extends `docs/solid-ai-templates/frontend/ux.md`:
286+
287+
- Target: WCAG 2.1 AA
288+
- Minimum text contrast ratio: 4.5:1 (normal text), 3:1 (large text)
289+
- All interactive elements reachable and operable by keyboard
290+
- Images MUST have descriptive `alt` text; decorative images use `alt=""`
291+
- `aria-label` on icon-only links and buttons
292+
- Navigation menu MUST close on Escape and restore focus
293+
294+
### 2.9 Code conventions
295+
296+
Extends `docs/solid-ai-templates/stack/static-site-astro.md`:
297+
298+
- Default to `.astro` components — zero JS shipped unless islands are used
299+
- MUST NOT use `set:html` — bypasses escaping; use `{expression}` instead
300+
- ESLint and Prettier are not yet configured — follow `base/quality.md`
301+
style rules manually until tooling is added
302+
- `.astro` files: keep component scripts minimal, logic in `src/lib/`
303+
304+
### 2.10 CI/CD
305+
306+
Two GitHub Actions workflows:
307+
308+
**`build.yml`** — triggers on pull requests to `main`
309+
- Checkout, setup Node (pinned to match `engines` in `package.json`),
310+
npm ci, build
311+
312+
**`deploy.yml`** — triggers on push to `main`
313+
- Same build steps, plus upload artifact and deploy to GitHub Pages
314+
315+
### 2.11 Release process
316+
317+
Follow `docs/solid-ai-templates/base/git.md` release process:
318+
1. `git checkout -b chore/release-vX.Y.Z`
319+
2. `git commit --allow-empty -m "chore: release vX.Y.Z"`
320+
3. Push, open PR, merge
321+
4. `git checkout main && git pull`
322+
5. `git tag vX.Y.Z && git push origin vX.Y.Z`
323+
324+
Tags use semver: `v1.0.0` (lowercase v, three segments).
325+
326+
### 2.12 Licensing
327+
328+
- Tutorial content: CC BY-NC-SA 4.0
329+
- Allows copying and adapting with attribution
330+
- Prohibits commercial use without permission
331+
- Derivatives MUST use the same license
332+
333+
266334
## 3. Session protocol
267335

268336
### 3.1 Scope guard

0 commit comments

Comments
 (0)