[IMPORTANT] Use TaskCreate to break ALL work into small tasks BEFORE starting — including tasks for each file read. This prevents context loss from long files. For simple tasks, AI MUST ask user whether to skip.
Prerequisites: MUST READ before executing:
.claude/skills/shared/scan-and-update-reference-doc-protocol.md
.claude/skills/shared/understand-code-first-protocol.md
Quick Summary
Goal: Scan frontend codebase and populate docs/project-reference/frontend-patterns-reference.md with component base classes, state management patterns, form handling, API service patterns, routing conventions, and directory structure.
Workflow:
- Read — Load current target doc, detect init vs sync mode
- Scan — Discover frontend patterns via parallel sub-agents
- Report — Write findings to external report file
- Generate — Build/update reference doc from report
- Verify — Validate code examples reference real files
Key Rules:
- Generic — works with any frontend framework (Angular, React, Vue, Svelte, etc.)
- Detect framework first, then scan for framework-specific patterns
- Every code example must come from actual project files with file:line references
Be skeptical. Apply critical thinking, sequential thinking. Every claim needs traced proof, confidence percentages (Idea should be more than 80%).
Scan Frontend Patterns
Phase 0: Read & Assess
- Read
docs/project-reference/frontend-patterns-reference.md
- Detect mode: init (placeholder) or sync (populated)
- If sync: extract existing sections and note what's already well-documented
Phase 1: Plan Scan Strategy
Detect frontend framework:
angular.json / nx.json → Angular (check for standalone components, signals, NgRx)
package.json with react / next → React (check for hooks, context, state libs)
package.json with vue / nuxt → Vue (check for Composition API, Pinia)
package.json with svelte / sveltekit → Svelte
- Multiple frameworks → document each separately
Use docs/project-config.json contextGroups/modules if available for app paths.
Phase 2: Execute Scan (Parallel Sub-Agents)
Launch 3 Explore agents in parallel:
Agent 1: Component & Form Patterns
- Grep for component base classes (
extends.*Component, @Component, React.Component)
- Find form handling patterns (reactive forms, form builders, validation patterns)
- Discover component lifecycle conventions (init, destroy, cleanup patterns)
- Find template/JSX conventions (structural patterns, conditional rendering)
- Look for component communication patterns (inputs/outputs, props/events, signals)
Agent 2: State Management & API Services
- Grep for state management patterns (stores, reducers, signals, observables)
- Find API service base classes (
extends.*Service, HttpClient, fetch wrappers)
- Discover data fetching patterns (interceptors, error handling, caching)
- Find subscription/cleanup patterns (unsubscribe, dispose, cleanup callbacks)
- Look for shared/common service patterns
Agent 3: Routing, Directives & Directory Structure
- Grep for routing configuration (route definitions, guards, resolvers, lazy loading)
- Find custom directives/pipes/hooks (reusable behavior patterns)
- Discover module/library organization (shared modules, feature modules)
- Map the directory structure conventions (where components, services, models live)
- Find build configuration patterns (environment configs, proxy configs)
Write all findings to: plans/reports/scan-frontend-patterns-{YYMMDD}-{HHMM}-report.md
Phase 3: Analyze & Generate
Read the report. Build these sections:
Target Sections
| Section |
Content |
| Component Base Classes |
Base class hierarchy, what each base provides, when to use which |
| State Management |
Store pattern, reactivity approach, data flow conventions |
| Forms |
Form creation pattern, validation approach, error display conventions |
| API Services |
Service base class, HTTP call pattern, error handling, caching |
| Routing |
Route definition pattern, guards, lazy loading, navigation conventions |
| Directives & Pipes |
Custom reusable behaviors, naming conventions, registration |
| Directory Structure |
Where things live: components, services, models, shared code |
| Subscription Cleanup |
How subscriptions/listeners are managed and cleaned up |
| Styling Conventions |
Component styling approach (scoped, modules, BEM, utility classes) |
Content Rules
- Show actual code snippets (5-15 lines) from the project with
file:line references
- Include "DO" and "DON'T" examples where anti-patterns are clear
- Use tables for convention summaries (base classes, file locations, naming)
- Group patterns by developer task (not by framework concept)
Phase 4: Write & Verify
- Write updated doc with
<!-- Last scanned: YYYY-MM-DD --> at top
- Verify: 5 code example file paths exist (Glob check)
- Verify: class/function names in examples match actual definitions
- Report: sections updated, patterns discovered, coverage gaps
IMPORTANT Task Planning Notes (MUST FOLLOW)
- Always plan and break work into many small todo tasks using TaskCreate
- Always add a final review todo task to verify work quality and identify fixes/enhancements
1---2name: scan-frontend-patterns3description: [Documentation] Scan project and populate/sync docs/project-reference/frontend-patterns-reference.md with component base classes, state management, forms, API services, routing, and styling conventions.4---5
6> **[IMPORTANT]** Use `TaskCreate` to break ALL work into small tasks BEFORE starting — including tasks for each file read. This prevents context loss from long files. For simple tasks, AI MUST ask user whether to skip.
7
8**Prerequisites:** **MUST READ** before executing:
9
10- `.claude/skills/shared/scan-and-update-reference-doc-protocol.md`
11- `.claude/skills/shared/understand-code-first-protocol.md`
12
13## Quick Summary
14
15**Goal:** Scan frontend codebase and populate `docs/project-reference/frontend-patterns-reference.md` with component base classes, state management patterns, form handling, API service patterns, routing conventions, and directory structure.
16
17**Workflow:**
18
191. **Read** — Load current target doc, detect init vs sync mode
202. **Scan** — Discover frontend patterns via parallel sub-agents
213. **Report** — Write findings to external report file
224. **Generate** — Build/update reference doc from report
235. **Verify** — Validate code examples reference real files
24
25**Key Rules:**
26
27- Generic — works with any frontend framework (Angular, React, Vue, Svelte, etc.)
28- Detect framework first, then scan for framework-specific patterns
29- Every code example must come from actual project files with file:line references
30
31**Be skeptical. Apply critical thinking, sequential thinking. Every claim needs traced proof, confidence percentages (Idea should be more than 80%).**
32
33# Scan Frontend Patterns
34
35## Phase 0: Read & Assess
36
371. Read `docs/project-reference/frontend-patterns-reference.md`
382. Detect mode: init (placeholder) or sync (populated)
393. If sync: extract existing sections and note what's already well-documented
40
41## Phase 1: Plan Scan Strategy
42
43Detect frontend framework:
44
45- `angular.json` / `nx.json` → Angular (check for standalone components, signals, NgRx)
46- `package.json` with `react` / `next` → React (check for hooks, context, state libs)
47- `package.json` with `vue` / `nuxt` → Vue (check for Composition API, Pinia)
48- `package.json` with `svelte` / `sveltekit` → Svelte
49- Multiple frameworks → document each separately
50
51Use `docs/project-config.json` contextGroups/modules if available for app paths.
52
53## Phase 2: Execute Scan (Parallel Sub-Agents)
54
55Launch **3 Explore agents** in parallel:
56
57### Agent 1: Component & Form Patterns
58
59- Grep for component base classes (`extends.*Component`, `@Component`, `React.Component`)
60- Find form handling patterns (reactive forms, form builders, validation patterns)
61- Discover component lifecycle conventions (init, destroy, cleanup patterns)
62- Find template/JSX conventions (structural patterns, conditional rendering)
63- Look for component communication patterns (inputs/outputs, props/events, signals)
64
65### Agent 2: State Management & API Services
66
67- Grep for state management patterns (stores, reducers, signals, observables)
68- Find API service base classes (`extends.*Service`, `HttpClient`, `fetch` wrappers)
69- Discover data fetching patterns (interceptors, error handling, caching)
70- Find subscription/cleanup patterns (unsubscribe, dispose, cleanup callbacks)
71- Look for shared/common service patterns
72
73### Agent 3: Routing, Directives & Directory Structure
74
75- Grep for routing configuration (route definitions, guards, resolvers, lazy loading)
76- Find custom directives/pipes/hooks (reusable behavior patterns)
77- Discover module/library organization (shared modules, feature modules)
78- Map the directory structure conventions (where components, services, models live)
79- Find build configuration patterns (environment configs, proxy configs)
80
81Write all findings to: `plans/reports/scan-frontend-patterns-{YYMMDD}-{HHMM}-report.md`
82
83## Phase 3: Analyze & Generate
84
85Read the report. Build these sections:
86
87### Target Sections
88
89| Section | Content |
90| -------------------------- | ---------------------------------------------------------------------- |
91| **Component Base Classes** | Base class hierarchy, what each base provides, when to use which |
92| **State Management** | Store pattern, reactivity approach, data flow conventions |
93| **Forms** | Form creation pattern, validation approach, error display conventions |
94| **API Services** | Service base class, HTTP call pattern, error handling, caching |
95| **Routing** | Route definition pattern, guards, lazy loading, navigation conventions |
96| **Directives & Pipes** | Custom reusable behaviors, naming conventions, registration |
97| **Directory Structure** | Where things live: components, services, models, shared code |
98| **Subscription Cleanup** | How subscriptions/listeners are managed and cleaned up |
99| **Styling Conventions** | Component styling approach (scoped, modules, BEM, utility classes) |
100
101### Content Rules
102
103- Show actual code snippets (5-15 lines) from the project with `file:line` references
104- Include "DO" and "DON'T" examples where anti-patterns are clear
105- Use tables for convention summaries (base classes, file locations, naming)
106- Group patterns by developer task (not by framework concept)
107
108## Phase 4: Write & Verify
109
1101. Write updated doc with `<!-- Last scanned: YYYY-MM-DD -->` at top
1112. Verify: 5 code example file paths exist (Glob check)
1123. Verify: class/function names in examples match actual definitions
1134. Report: sections updated, patterns discovered, coverage gaps
114
115---
116
117**IMPORTANT Task Planning Notes (MUST FOLLOW)**
118
119- Always plan and break work into many small todo tasks using TaskCreate
120- Always add a final review todo task to verify work quality and identify fixes/enhancements