@champpaba/claude-agent-kit 1.0.0 → 1.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/{template/.claude → .claude}/CHANGELOG-v1.1.1.md +259 -259
- package/{template/.claude → .claude}/CLAUDE.md +555 -329
- package/{template/.claude → .claude}/agents/01-integration.md +797 -797
- package/{template/.claude → .claude}/agents/02-uxui-frontend.md +955 -899
- package/{template/.claude → .claude}/agents/03-test-debug.md +759 -759
- package/{template/.claude → .claude}/agents/04-frontend.md +1099 -1099
- package/{template/.claude → .claude}/agents/05-backend.md +1217 -1217
- package/{template/.claude → .claude}/agents/06-database.md +969 -969
- package/{template/.claude → .claude}/commands/agentsetup.md +1464 -1464
- package/{template/.claude → .claude}/commands/cdev.md +327 -327
- package/{template/.claude → .claude}/commands/csetup.md +447 -447
- package/{template/.claude → .claude}/commands/cstatus.md +60 -60
- package/{template/.claude → .claude}/commands/cview.md +364 -364
- package/.claude/commands/designsetup.md +838 -0
- package/.claude/commands/extract.md +1005 -0
- package/.claude/commands/pageplan.md +327 -0
- package/{template/.claude → .claude}/commands/psetup.md +101 -101
- package/{template/.claude → .claude}/contexts/design/accessibility.md +611 -611
- package/{template/.claude → .claude}/contexts/design/box-thinking.md +566 -553
- package/{template/.claude → .claude}/contexts/design/color-theory.md +519 -498
- package/{template/.claude → .claude}/contexts/design/index.md +290 -247
- package/{template/.claude → .claude}/contexts/design/layout.md +400 -400
- package/{template/.claude → .claude}/contexts/design/responsive.md +551 -551
- package/{template/.claude → .claude}/contexts/design/shadows.md +522 -522
- package/{template/.claude → .claude}/contexts/design/spacing.md +445 -428
- package/{template/.claude → .claude}/contexts/design/typography.md +465 -465
- package/{template/.claude → .claude}/contexts/domain/README.md +164 -164
- package/{template/.claude → .claude}/contexts/patterns/agent-coordination.md +388 -388
- package/{template/.claude → .claude}/contexts/patterns/agent-discovery.md +182 -182
- package/{template/.claude → .claude}/contexts/patterns/change-workflow.md +538 -538
- package/{template/.claude → .claude}/contexts/patterns/code-standards.md +515 -515
- package/{template/.claude → .claude}/contexts/patterns/development-principles.md +513 -513
- package/{template/.claude → .claude}/contexts/patterns/error-handling.md +478 -478
- package/{template/.claude → .claude}/contexts/patterns/error-recovery.md +365 -365
- package/{template/.claude → .claude}/contexts/patterns/logging.md +424 -424
- package/{template/.claude → .claude}/contexts/patterns/task-breakdown.md +452 -452
- package/{template/.claude → .claude}/contexts/patterns/task-classification.md +523 -523
- package/{template/.claude → .claude}/contexts/patterns/tdd-classification.md +516 -516
- package/{template/.claude → .claude}/contexts/patterns/testing.md +413 -413
- package/{template/.claude → .claude}/contexts/patterns/validation-framework.md +776 -776
- package/{template/.claude → .claude}/lib/README.md +39 -39
- package/{template/.claude → .claude}/lib/agent-executor.md +258 -258
- package/{template/.claude → .claude}/lib/agent-router.md +572 -572
- package/{template/.claude → .claude}/lib/flags-updater.md +469 -469
- package/{template/.claude → .claude}/lib/tdd-classifier.md +345 -345
- package/{template/.claude → .claude}/lib/validation-gates.md +484 -484
- package/{template/.claude → .claude}/settings.local.json +42 -42
- package/.claude/templates/STYLE_GUIDE.template.md +879 -0
- package/{template/.claude → .claude}/templates/context-template.md +45 -45
- package/{template/.claude → .claude}/templates/flags-template.json +42 -42
- package/.claude/templates/page-plan-example.md +562 -0
- package/{template/.claude → .claude}/templates/phase-templates.json +124 -124
- package/{template/.claude → .claude}/templates/phases-sections/accessibility-test.md +17 -17
- package/{template/.claude → .claude}/templates/phases-sections/api-design.md +37 -37
- package/{template/.claude → .claude}/templates/phases-sections/backend-tests.md +16 -16
- package/{template/.claude → .claude}/templates/phases-sections/backend.md +37 -37
- package/{template/.claude → .claude}/templates/phases-sections/business-logic-validation.md +16 -16
- package/{template/.claude → .claude}/templates/phases-sections/component-tests.md +17 -17
- package/{template/.claude → .claude}/templates/phases-sections/contract-backend.md +16 -16
- package/{template/.claude → .claude}/templates/phases-sections/contract-frontend.md +16 -16
- package/{template/.claude → .claude}/templates/phases-sections/database.md +35 -35
- package/{template/.claude → .claude}/templates/phases-sections/documentation.md +17 -17
- package/{template/.claude → .claude}/templates/phases-sections/e2e-tests.md +16 -16
- package/{template/.claude → .claude}/templates/phases-sections/fix-implementation.md +17 -17
- package/{template/.claude → .claude}/templates/phases-sections/frontend-integration.md +18 -18
- package/{template/.claude → .claude}/templates/phases-sections/frontend-mockup.md +123 -123
- package/{template/.claude → .claude}/templates/phases-sections/manual-flow-test.md +15 -15
- package/{template/.claude → .claude}/templates/phases-sections/manual-ux-test.md +16 -16
- package/{template/.claude → .claude}/templates/phases-sections/refactor-implementation.md +17 -17
- package/{template/.claude → .claude}/templates/phases-sections/refactor.md +16 -16
- package/{template/.claude → .claude}/templates/phases-sections/regression-tests.md +15 -15
- package/{template/.claude → .claude}/templates/phases-sections/report.md +16 -16
- package/{template/.claude → .claude}/templates/phases-sections/responsive-test.md +16 -16
- package/{template/.claude → .claude}/templates/phases-sections/script-implementation.md +43 -43
- package/{template/.claude → .claude}/templates/phases-sections/test-coverage.md +16 -16
- package/{template/.claude → .claude}/templates/phases-sections/user-approval.md +14 -14
- package/LICENSE +21 -21
- package/README.md +758 -331
- package/lib/init.js +1 -1
- package/lib/update.js +1 -1
- package/package.json +2 -2
- /package/{template/.claude → .claude}/contexts/patterns/frontend-component-strategy.md +0 -0
- /package/{template/.claude → .claude}/contexts/patterns/git-workflow.md +0 -0
- /package/{template/.claude → .claude}/contexts/patterns/ui-component-consistency.md +0 -0
|
@@ -0,0 +1,562 @@
|
|
|
1
|
+
# Page Plan: Landing Page (EXAMPLE)
|
|
2
|
+
> This is an example template showing the structure of page-plan.md
|
|
3
|
+
> Generated from: proposal.md, prd.md, project_brief.md, STYLE_GUIDE.md
|
|
4
|
+
> Change ID: landing-page
|
|
5
|
+
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## 1. Component Plan
|
|
9
|
+
|
|
10
|
+
### 🔄 Reuse Components (Found in codebase)
|
|
11
|
+
|
|
12
|
+
- **Navbar**
|
|
13
|
+
- Path: `/components/layout/Navbar.tsx`
|
|
14
|
+
- Usage: `<Navbar user={currentUser} showSearch={true} />`
|
|
15
|
+
- Props: `user?: User, showSearch?: boolean, variant?: 'default' | 'transparent'`
|
|
16
|
+
- Notes: Sticky navigation with logo, menu, and CTA button
|
|
17
|
+
|
|
18
|
+
- **Footer**
|
|
19
|
+
- Path: `/components/layout/Footer.tsx`
|
|
20
|
+
- Usage: `<Footer variant="default" />`
|
|
21
|
+
- Props: `variant?: 'default' | 'minimal'`
|
|
22
|
+
- Notes: Contains links, social media icons, copyright
|
|
23
|
+
|
|
24
|
+
---
|
|
25
|
+
|
|
26
|
+
### ✅ Create New Components
|
|
27
|
+
|
|
28
|
+
#### Shared Components (reusable across pages)
|
|
29
|
+
|
|
30
|
+
(None for this landing page - all new components are page-specific)
|
|
31
|
+
|
|
32
|
+
#### Page-Specific Components (used only here)
|
|
33
|
+
|
|
34
|
+
- **HeroSection**
|
|
35
|
+
- Purpose: Landing page hero with headline, subheadline, CTA, and background image
|
|
36
|
+
- Compose with: Button (shadcn/ui), background image
|
|
37
|
+
- Store at: `/app/landing/HeroSection.tsx`
|
|
38
|
+
- Responsive: Full height on desktop, auto height on mobile, stack content vertically
|
|
39
|
+
|
|
40
|
+
- **FeatureGrid**
|
|
41
|
+
- Purpose: 3-column grid showcasing key features with icons and descriptions
|
|
42
|
+
- Compose with: Card (shadcn/ui), icons from Material Symbols
|
|
43
|
+
- Store at: `/app/landing/FeatureGrid.tsx`
|
|
44
|
+
- Responsive: 3 columns desktop → 1 column mobile
|
|
45
|
+
|
|
46
|
+
- **HowItWorksSection**
|
|
47
|
+
- Purpose: 3-step process timeline showing how the product works
|
|
48
|
+
- Compose with: Custom step component with numbers
|
|
49
|
+
- Store at: `/app/landing/HowItWorksSection.tsx`
|
|
50
|
+
- Responsive: Horizontal timeline desktop → Vertical timeline mobile
|
|
51
|
+
|
|
52
|
+
- **TestimonialCarousel**
|
|
53
|
+
- Purpose: Rotating testimonials with student photos, quotes, and ratings
|
|
54
|
+
- Compose with: Card (shadcn/ui), Avatar component, Carousel logic
|
|
55
|
+
- Store at: `/app/landing/TestimonialCarousel.tsx`
|
|
56
|
+
- Responsive: 3 cards desktop → 1 card mobile with swipe
|
|
57
|
+
|
|
58
|
+
- **FAQAccordion**
|
|
59
|
+
- Purpose: Collapsible FAQ section with common questions
|
|
60
|
+
- Compose with: Accordion (shadcn/ui)
|
|
61
|
+
- Store at: `/app/landing/FAQAccordion.tsx`
|
|
62
|
+
- Responsive: Full width on all devices
|
|
63
|
+
|
|
64
|
+
- **CTASection**
|
|
65
|
+
- Purpose: Final call-to-action with email signup form
|
|
66
|
+
- Compose with: Input (shadcn/ui), Button (shadcn/ui)
|
|
67
|
+
- Store at: `/app/landing/CTASection.tsx`
|
|
68
|
+
- Responsive: Horizontal form desktop → Stacked form mobile
|
|
69
|
+
|
|
70
|
+
---
|
|
71
|
+
|
|
72
|
+
## 2. Page Structure
|
|
73
|
+
|
|
74
|
+
```tsx
|
|
75
|
+
<div className="landing-page">
|
|
76
|
+
<Navbar user={null} showSearch={false} variant="transparent" /> {/* Reuse - transparent on hero */}
|
|
77
|
+
|
|
78
|
+
<main>
|
|
79
|
+
<HeroSection /> {/* New - full viewport height */}
|
|
80
|
+
<FeatureGrid /> {/* New - 3 columns */}
|
|
81
|
+
<HowItWorksSection /> {/* New - timeline */}
|
|
82
|
+
<TestimonialCarousel /> {/* New - carousel */}
|
|
83
|
+
<FAQAccordion /> {/* New - accordion */}
|
|
84
|
+
<CTASection /> {/* New - email form */}
|
|
85
|
+
</main>
|
|
86
|
+
|
|
87
|
+
<Footer variant="default" /> {/* Reuse */}
|
|
88
|
+
</div>
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
### Layout Flow:
|
|
92
|
+
- **Hero:** Full viewport height, centered content
|
|
93
|
+
- **Features:** Container max-width 1200px, padding 6rem vertical
|
|
94
|
+
- **How It Works:** Container max-width 1000px, padding 6rem vertical
|
|
95
|
+
- **Testimonials:** Full width background, container max-width 1200px
|
|
96
|
+
- **FAQ:** Container max-width 800px, padding 6rem vertical
|
|
97
|
+
- **CTA:** Full width colored background, container max-width 600px
|
|
98
|
+
|
|
99
|
+
---
|
|
100
|
+
|
|
101
|
+
## 3. 📦 Assets to Prepare (คุณต้องเตรียม)
|
|
102
|
+
|
|
103
|
+
### Images
|
|
104
|
+
|
|
105
|
+
- [ ] **Hero Background Image**
|
|
106
|
+
- Filename: `hero-background.jpg`
|
|
107
|
+
- Size: 1920x1080 (16:9 ratio)
|
|
108
|
+
- Format: WebP (preferred) or high-quality JPG
|
|
109
|
+
- Location: `/public/images/hero-background.jpg`
|
|
110
|
+
- Purpose: Hero section background
|
|
111
|
+
- Style: Modern workspace, student studying, or abstract tech pattern
|
|
112
|
+
- Note: Should support text overlay (darker or blurred area for text)
|
|
113
|
+
|
|
114
|
+
- [ ] **Logo**
|
|
115
|
+
- Filename: `logo.svg`
|
|
116
|
+
- Size: 200x60 (approx)
|
|
117
|
+
- Format: SVG (transparent background)
|
|
118
|
+
- Location: `/public/images/logo.svg`
|
|
119
|
+
- Purpose: Navbar logo
|
|
120
|
+
- Note: Should work on both light and dark backgrounds
|
|
121
|
+
|
|
122
|
+
### Icons
|
|
123
|
+
|
|
124
|
+
- [ ] **Feature Icons** (3 icons)
|
|
125
|
+
- Filenames: `feature-ai.svg`, `feature-exam.svg`, `feature-analytics.svg`
|
|
126
|
+
- Size: 24x24 pixels
|
|
127
|
+
- Format: SVG, outline style (match Material Symbols)
|
|
128
|
+
- Location: `/public/icons/features/`
|
|
129
|
+
- Style: Consistent stroke width, simple line art
|
|
130
|
+
- Suggested icons:
|
|
131
|
+
- AI: Brain or robot symbol
|
|
132
|
+
- Exam: Document or test paper
|
|
133
|
+
- Analytics: Bar chart or growth graph
|
|
134
|
+
|
|
135
|
+
- [ ] **Step Icons** (3 icons - optional)
|
|
136
|
+
- Filenames: `step-1.svg`, `step-2.svg`, `step-3.svg`
|
|
137
|
+
- Size: 32x32 pixels
|
|
138
|
+
- Format: SVG
|
|
139
|
+
- Location: `/public/icons/steps/`
|
|
140
|
+
- Alternative: Use CSS-styled numbers (no icons needed)
|
|
141
|
+
|
|
142
|
+
### Testimonial Photos
|
|
143
|
+
|
|
144
|
+
- [ ] **Student Photos** (3 photos)
|
|
145
|
+
- Filenames: `testimonial-1.jpg`, `testimonial-2.jpg`, `testimonial-3.jpg`
|
|
146
|
+
- Size: 100x100 pixels (will be displayed as circular)
|
|
147
|
+
- Format: JPG or WebP
|
|
148
|
+
- Location: `/public/images/testimonials/`
|
|
149
|
+
- Note: Professional headshots or AI-generated avatars
|
|
150
|
+
- Alternative: Use placeholder service (e.g., `https://i.pravatar.cc/100?img=X`)
|
|
151
|
+
|
|
152
|
+
### Other Assets
|
|
153
|
+
|
|
154
|
+
- [ ] **Social Media Icons** (if not using icon library)
|
|
155
|
+
- Check if existing Footer component includes these
|
|
156
|
+
- If needed: Facebook, Twitter, LinkedIn, Instagram
|
|
157
|
+
- Size: 20x20 pixels, SVG format
|
|
158
|
+
|
|
159
|
+
---
|
|
160
|
+
|
|
161
|
+
**Asset Preparation Checklist:**
|
|
162
|
+
1. ✅ Review all assets above
|
|
163
|
+
2. ✅ Prepare images at specified sizes
|
|
164
|
+
3. ✅ Optimize images (compress without quality loss)
|
|
165
|
+
4. ✅ Place files in correct directories (`/public/images/`, `/public/icons/`)
|
|
166
|
+
5. ✅ Verify file naming matches exactly (case-sensitive!)
|
|
167
|
+
6. ✅ If assets not ready: Use placeholders temporarily
|
|
168
|
+
- Images: `https://placehold.co/1920x1080/png`
|
|
169
|
+
- Avatars: `https://i.pravatar.cc/100`
|
|
170
|
+
- Icons: Material Symbols library (imported from @mui/icons-material)
|
|
171
|
+
|
|
172
|
+
---
|
|
173
|
+
|
|
174
|
+
## 4. 📝 Content Draft (AI-Generated - กรุณา Review & Edit)
|
|
175
|
+
|
|
176
|
+
> **Instructions:** This content is AI-generated based on PRD analysis.
|
|
177
|
+
> Please review, edit, and adjust tone/messaging as needed.
|
|
178
|
+
|
|
179
|
+
---
|
|
180
|
+
|
|
181
|
+
### Hero Section
|
|
182
|
+
|
|
183
|
+
**Headline:**
|
|
184
|
+
"Master TOEIC with AI-Powered Practice Tests"
|
|
185
|
+
|
|
186
|
+
_Rationale: Direct value proposition, mentions AI (key differentiator), targets TOEIC test-takers_
|
|
187
|
+
_Length: 44 characters (recommended: 40-60)_
|
|
188
|
+
_Source: Derived from PRD section 1 - Adaptive Learning System for TOEIC_
|
|
189
|
+
|
|
190
|
+
**Subheadline:**
|
|
191
|
+
"Experience exam-quality questions tailored to your skill level. Our AI generates tests validated against official TOEIC standards. Start your free diagnostic test today."
|
|
192
|
+
|
|
193
|
+
_Length: 180 characters (recommended: 120-180)_
|
|
194
|
+
_Rationale: Explains how it works, emphasizes quality/validation, includes CTA_
|
|
195
|
+
|
|
196
|
+
**CTA Button Text:**
|
|
197
|
+
"Start Free Test"
|
|
198
|
+
|
|
199
|
+
_Alternative options: "Try Now", "Get Started Free", "Begin Assessment"_
|
|
200
|
+
|
|
201
|
+
**CTA Button Action:**
|
|
202
|
+
Navigate to `/signup` or `/exam/diagnostic` (depending on flow)
|
|
203
|
+
|
|
204
|
+
---
|
|
205
|
+
|
|
206
|
+
### Features Section (3 Cards)
|
|
207
|
+
|
|
208
|
+
#### Feature 1: AI-Generated Questions
|
|
209
|
+
|
|
210
|
+
**Icon:** `feature-ai.svg` (brain/AI symbol)
|
|
211
|
+
|
|
212
|
+
**Title:** "AI-Generated Questions"
|
|
213
|
+
|
|
214
|
+
**Description:**
|
|
215
|
+
"Our advanced AI engine analyzes thousands of official TOEIC exams to generate practice questions with comparable difficulty and format. Each question is validated against real exam standards, ensuring you practice with the highest quality materials available."
|
|
216
|
+
|
|
217
|
+
_Length: 58 words (target: 50-60)_
|
|
218
|
+
_Source: PRD section 3 - Question Generation Engine_
|
|
219
|
+
_Tone: Professional, emphasizes technology + quality_
|
|
220
|
+
|
|
221
|
+
---
|
|
222
|
+
|
|
223
|
+
#### Feature 2: Real Exam Simulation
|
|
224
|
+
|
|
225
|
+
**Icon:** `feature-exam.svg` (document/test paper symbol)
|
|
226
|
+
|
|
227
|
+
**Title:** "Authentic Exam Experience"
|
|
228
|
+
|
|
229
|
+
**Description:**
|
|
230
|
+
"Practice with a testing interface identical to the official TOEIC format. Timed sections, question navigation, and scoring algorithms mirror the actual exam environment. Reduce test-day anxiety by familiarizing yourself with the real thing."
|
|
231
|
+
|
|
232
|
+
_Length: 50 words_
|
|
233
|
+
_Source: PRD section 4 - Quiz & Exam Interface_
|
|
234
|
+
_Tone: Reassuring, focuses on reducing anxiety_
|
|
235
|
+
|
|
236
|
+
---
|
|
237
|
+
|
|
238
|
+
#### Feature 3: Instant Performance Analytics
|
|
239
|
+
|
|
240
|
+
**Icon:** `feature-analytics.svg` (chart symbol)
|
|
241
|
+
|
|
242
|
+
**Title:** "Detailed Performance Insights"
|
|
243
|
+
|
|
244
|
+
**Description:**
|
|
245
|
+
"Receive immediate score breakdowns by skill category and difficulty level. Track your progress over time, identify knowledge gaps, and get personalized recommendations to improve your weakest areas. Data-driven learning for maximum efficiency."
|
|
246
|
+
|
|
247
|
+
_Length: 52 words_
|
|
248
|
+
_Source: PRD section 5 - Success Metrics_
|
|
249
|
+
_Tone: Data-focused, emphasizes personalization_
|
|
250
|
+
|
|
251
|
+
---
|
|
252
|
+
|
|
253
|
+
### How It Works Section (3 Steps)
|
|
254
|
+
|
|
255
|
+
**Section Headline:** "How It Works"
|
|
256
|
+
|
|
257
|
+
**Section Subheadline:** "Get started in three simple steps"
|
|
258
|
+
|
|
259
|
+
#### Step 1: Take Diagnostic Assessment
|
|
260
|
+
|
|
261
|
+
**Title:** "1. Take Diagnostic Test"
|
|
262
|
+
|
|
263
|
+
**Description:**
|
|
264
|
+
"Begin with a comprehensive diagnostic exam to establish your baseline TOEIC score and identify your current strengths and weaknesses across all skill categories."
|
|
265
|
+
|
|
266
|
+
_Length: 30 words_
|
|
267
|
+
|
|
268
|
+
---
|
|
269
|
+
|
|
270
|
+
#### Step 2: Receive Personalized Plan
|
|
271
|
+
|
|
272
|
+
**Title:** "2. Get Your Learning Path"
|
|
273
|
+
|
|
274
|
+
**Description:**
|
|
275
|
+
"Our AI analyzes your results and creates a customized study plan targeting your specific knowledge gaps, prioritizing areas where you can improve fastest."
|
|
276
|
+
|
|
277
|
+
_Length: 28 words_
|
|
278
|
+
|
|
279
|
+
---
|
|
280
|
+
|
|
281
|
+
#### Step 3: Practice & Improve
|
|
282
|
+
|
|
283
|
+
**Title:** "3. Practice & Track Progress"
|
|
284
|
+
|
|
285
|
+
**Description:**
|
|
286
|
+
"Work through tailored practice tests and exercises. Monitor your improvement with detailed analytics and adjust your study plan as you progress toward your target score."
|
|
287
|
+
|
|
288
|
+
_Length: 32 words_
|
|
289
|
+
|
|
290
|
+
---
|
|
291
|
+
|
|
292
|
+
### Testimonials Section (3 Reviews)
|
|
293
|
+
|
|
294
|
+
**Section Headline:** "What Our Students Say"
|
|
295
|
+
|
|
296
|
+
**Section Subheadline:** "Join thousands of successful test-takers"
|
|
297
|
+
|
|
298
|
+
---
|
|
299
|
+
|
|
300
|
+
#### Testimonial 1
|
|
301
|
+
|
|
302
|
+
**Name:** "Somchai Pattanapong"
|
|
303
|
+
**Role:** "University Student, Chulalongkorn University"
|
|
304
|
+
**Photo:** `testimonial-1.jpg`
|
|
305
|
+
|
|
306
|
+
**Quote:**
|
|
307
|
+
"I improved my TOEIC score by 150 points in just one month using this platform. The AI-generated questions felt exactly like the real exam, and the instant feedback helped me focus on my weak areas. Highly recommended for serious test-takers!"
|
|
308
|
+
|
|
309
|
+
_Length: 95 words_
|
|
310
|
+
_Tone: Enthusiastic, focuses on results (150-point improvement)_
|
|
311
|
+
|
|
312
|
+
---
|
|
313
|
+
|
|
314
|
+
#### Testimonial 2
|
|
315
|
+
|
|
316
|
+
**Name:** "Natthida Kaewkham"
|
|
317
|
+
**Role:** "Marketing Professional"
|
|
318
|
+
**Photo:** `testimonial-2.jpg`
|
|
319
|
+
|
|
320
|
+
**Quote:**
|
|
321
|
+
"As a working professional, I needed flexible practice that fit my busy schedule. The platform's adaptive tests and detailed analytics made my study time efficient and effective. I passed my target score on the first attempt!"
|
|
322
|
+
|
|
323
|
+
_Length: 72 words - **EXPAND TO ~100 words**_
|
|
324
|
+
_Tone: Professional, emphasizes flexibility + efficiency_
|
|
325
|
+
|
|
326
|
+
**Suggested expansion:**
|
|
327
|
+
"As a working professional preparing for job applications, I needed flexible TOEIC practice that fit my busy schedule. The platform's adaptive tests and detailed analytics made my limited study time incredibly efficient and effective. The real-time progress tracking kept me motivated. I reached my target score of 850 on my first official attempt and secured my dream job at a multinational company!"
|
|
328
|
+
|
|
329
|
+
---
|
|
330
|
+
|
|
331
|
+
#### Testimonial 3
|
|
332
|
+
|
|
333
|
+
**Name:** "Wanchai Thongchai"
|
|
334
|
+
**Role:** "Graduate Student"
|
|
335
|
+
**Photo:** `testimonial-3.jpg`
|
|
336
|
+
|
|
337
|
+
**Quote:**
|
|
338
|
+
"The quality of practice questions is outstanding. I've tried many TOEIC prep services, but this AI-generated content is the closest to official exams I've experienced. The explanations for each answer helped me understand my mistakes and avoid repeating them."
|
|
339
|
+
|
|
340
|
+
_Length: 85 words - **EXPAND TO ~100 words**_
|
|
341
|
+
_Tone: Quality-focused, comparison with competitors_
|
|
342
|
+
|
|
343
|
+
**Suggested expansion:**
|
|
344
|
+
"The quality of practice questions is truly outstanding. I've tried many TOEIC preparation services over the years, but this AI-generated content is the closest to official exams I've experienced. The detailed explanations for each answer helped me understand not just what I got wrong, but why I made those mistakes and how to avoid repeating them. After three weeks of practice, my reading comprehension score improved by 80 points!"
|
|
345
|
+
|
|
346
|
+
---
|
|
347
|
+
|
|
348
|
+
### FAQ Section (5 Questions)
|
|
349
|
+
|
|
350
|
+
**Section Headline:** "Frequently Asked Questions"
|
|
351
|
+
|
|
352
|
+
---
|
|
353
|
+
|
|
354
|
+
#### FAQ 1
|
|
355
|
+
**Question:** "How accurate are the AI-generated questions compared to real TOEIC exams?"
|
|
356
|
+
|
|
357
|
+
**Answer:**
|
|
358
|
+
"Our AI model is trained on thousands of official TOEIC questions and validated against real exam standards. Statistical analysis shows a strong correlation (r > 0.85) between scores on our practice tests and official TOEIC scores. While no practice material can perfectly replicate the official exam, our questions are designed to match the format, difficulty, and content distribution of real TOEIC tests."
|
|
359
|
+
|
|
360
|
+
_Length: 110 words_
|
|
361
|
+
|
|
362
|
+
---
|
|
363
|
+
|
|
364
|
+
#### FAQ 2
|
|
365
|
+
**Question:** "What's included in the free diagnostic test?"
|
|
366
|
+
|
|
367
|
+
**Answer:**
|
|
368
|
+
"The free diagnostic test includes 100 questions covering TOEIC Reading sections (Parts 5, 6, and 7). You'll receive a detailed score report showing your performance by skill category, estimated TOEIC score range, and personalized recommendations for improvement. No credit card required."
|
|
369
|
+
|
|
370
|
+
_Length: 60 words - **EXPAND with what happens after free test**_
|
|
371
|
+
|
|
372
|
+
**Suggested expansion:**
|
|
373
|
+
"The free diagnostic test includes 100 questions covering TOEIC Reading sections (Parts 5, 6, and 7). You'll receive a detailed score report showing your performance by skill category, estimated TOEIC score range, and personalized study recommendations. After completing the free test, you can access additional practice tests, listening sections, and advanced analytics through our subscription plans. No credit card required for the diagnostic test."
|
|
374
|
+
|
|
375
|
+
---
|
|
376
|
+
|
|
377
|
+
#### FAQ 3
|
|
378
|
+
**Question:** "How does the scoring system work?"
|
|
379
|
+
|
|
380
|
+
**Answer:**
|
|
381
|
+
"Our scoring algorithm is calibrated against official TOEIC scoring standards. Each practice test is scored on a scale matching the real exam (10-990 points). You'll see your total score, section-by-section breakdown, and performance trends over time. The system also provides difficulty ratings for individual questions to help you understand your progress."
|
|
382
|
+
|
|
383
|
+
_Length: 85 words_
|
|
384
|
+
|
|
385
|
+
---
|
|
386
|
+
|
|
387
|
+
#### FAQ 4
|
|
388
|
+
**Question:** "Can I retake practice tests?"
|
|
389
|
+
|
|
390
|
+
**Answer:**
|
|
391
|
+
"Yes, you can retake any practice test. However, for the most accurate assessment, we recommend taking each test only once and then moving to new practice sets. Our AI generates unlimited unique practice tests, so you'll never run out of fresh material to practice with."
|
|
392
|
+
|
|
393
|
+
_Length: 65 words_
|
|
394
|
+
|
|
395
|
+
---
|
|
396
|
+
|
|
397
|
+
#### FAQ 5
|
|
398
|
+
**Question:** "Is the platform mobile-friendly?"
|
|
399
|
+
|
|
400
|
+
**Answer:**
|
|
401
|
+
"Yes, the platform is fully responsive and works on desktop, tablet, and mobile devices. However, we recommend using a desktop or laptop for full-length practice tests to simulate the actual TOEIC exam environment. You can use mobile devices for reviewing explanations, checking your progress, or practicing individual question sets."
|
|
402
|
+
|
|
403
|
+
_Length: 75 words_
|
|
404
|
+
|
|
405
|
+
---
|
|
406
|
+
|
|
407
|
+
### Final CTA Section
|
|
408
|
+
|
|
409
|
+
**Headline:** "Ready to Ace Your TOEIC Exam?"
|
|
410
|
+
|
|
411
|
+
**Subheadline:** "Join thousands of students improving their scores with AI-powered practice."
|
|
412
|
+
|
|
413
|
+
**CTA Button Text:** "Start Free Diagnostic Test"
|
|
414
|
+
|
|
415
|
+
**CTA Button Action:** Navigate to `/signup` or `/exam/diagnostic`
|
|
416
|
+
|
|
417
|
+
**Alternative CTA:** "Create Free Account"
|
|
418
|
+
|
|
419
|
+
---
|
|
420
|
+
|
|
421
|
+
**Content Review Checklist:**
|
|
422
|
+
1. ✅ Read all content above
|
|
423
|
+
2. ✅ Adjust tone to match brand voice
|
|
424
|
+
3. ✅ Edit headlines for clarity/impact
|
|
425
|
+
4. ✅ Expand testimonials to ~100 words each (if needed)
|
|
426
|
+
5. ✅ Verify claims are accurate (150-point improvement, r > 0.85 correlation)
|
|
427
|
+
6. ✅ Replace placeholder names with real testimonials (if available)
|
|
428
|
+
7. ✅ Finalize CTA actions (confirm routes: `/signup` vs `/exam/diagnostic`)
|
|
429
|
+
|
|
430
|
+
---
|
|
431
|
+
|
|
432
|
+
## 5. Design Notes
|
|
433
|
+
|
|
434
|
+
**Follow STYLE_GUIDE.md for all design decisions:**
|
|
435
|
+
|
|
436
|
+
- **Primary Color:** `#0d7276` (from STYLE_GUIDE.md Section 3)
|
|
437
|
+
- **Font Family:** `Prompt` (from STYLE_GUIDE.md Section 4)
|
|
438
|
+
- **Spacing Scale:** 8px grid system - use `p-4`, `p-6`, `p-8`, `gap-4`, `gap-6` (from STYLE_GUIDE.md Section 5)
|
|
439
|
+
- **Component Library:** shadcn/ui (from STYLE_GUIDE.md Section 6)
|
|
440
|
+
- **Icons:** Material Symbols (Outline style) (from STYLE_GUIDE.md Section 17)
|
|
441
|
+
- **Shadows:**
|
|
442
|
+
- Cards: `shadow-sm` on default, `shadow-md` on hover
|
|
443
|
+
- Elevated elements: `shadow-lg`
|
|
444
|
+
- **Border Radius:** `rounded-lg` for cards, `rounded-md` for buttons/inputs
|
|
445
|
+
- **Responsive Breakpoints:** (from STYLE_GUIDE.md Section 13)
|
|
446
|
+
- Mobile: < 640px
|
|
447
|
+
- Tablet: 640px - 1024px
|
|
448
|
+
- Desktop: > 1024px
|
|
449
|
+
|
|
450
|
+
**Accessibility Requirements:**
|
|
451
|
+
- WCAG 2.1 Level AA compliance
|
|
452
|
+
- Color contrast ratio: minimum 4.5:1 (text), 3:1 (large text)
|
|
453
|
+
- Keyboard navigation: All interactive elements focusable
|
|
454
|
+
- ARIA labels: All icons, buttons, form inputs
|
|
455
|
+
- Alt text: All images
|
|
456
|
+
|
|
457
|
+
---
|
|
458
|
+
|
|
459
|
+
## 6. Implementation Notes
|
|
460
|
+
|
|
461
|
+
### Component Imports (Reference for Developer)
|
|
462
|
+
|
|
463
|
+
```tsx
|
|
464
|
+
// ===== REUSE (Existing Components) =====
|
|
465
|
+
import { Navbar } from '@/components/layout/Navbar'
|
|
466
|
+
import { Footer } from '@/components/layout/Footer'
|
|
467
|
+
|
|
468
|
+
// ===== SHADCN/UI (Component Library) =====
|
|
469
|
+
import { Button } from '@/components/ui/button'
|
|
470
|
+
import { Card, CardHeader, CardContent } from '@/components/ui/card'
|
|
471
|
+
import { Input } from '@/components/ui/input'
|
|
472
|
+
import { Accordion, AccordionItem, AccordionTrigger, AccordionContent } from '@/components/ui/accordion'
|
|
473
|
+
|
|
474
|
+
// ===== NEW (To Be Created) =====
|
|
475
|
+
// Page-specific components
|
|
476
|
+
import { HeroSection } from './HeroSection'
|
|
477
|
+
import { FeatureGrid } from './FeatureGrid'
|
|
478
|
+
import { HowItWorksSection } from './HowItWorksSection'
|
|
479
|
+
import { TestimonialCarousel } from './TestimonialCarousel'
|
|
480
|
+
import { FAQAccordion } from './FAQAccordion'
|
|
481
|
+
import { CTASection } from './CTASection'
|
|
482
|
+
```
|
|
483
|
+
|
|
484
|
+
### File Structure
|
|
485
|
+
|
|
486
|
+
```
|
|
487
|
+
app/
|
|
488
|
+
├── landing/
|
|
489
|
+
│ ├── page.tsx # Main landing page (composes all sections)
|
|
490
|
+
│ ├── HeroSection.tsx # New
|
|
491
|
+
│ ├── FeatureGrid.tsx # New
|
|
492
|
+
│ ├── HowItWorksSection.tsx # New
|
|
493
|
+
│ ├── TestimonialCarousel.tsx # New
|
|
494
|
+
│ ├── FAQAccordion.tsx # New
|
|
495
|
+
│ └── CTASection.tsx # New
|
|
496
|
+
components/
|
|
497
|
+
├── layout/
|
|
498
|
+
│ ├── Navbar.tsx # Reuse (existing)
|
|
499
|
+
│ └── Footer.tsx # Reuse (existing)
|
|
500
|
+
└── ui/
|
|
501
|
+
├── button.tsx # shadcn/ui (existing)
|
|
502
|
+
├── card.tsx # shadcn/ui (existing)
|
|
503
|
+
├── input.tsx # shadcn/ui (existing)
|
|
504
|
+
└── accordion.tsx # shadcn/ui (existing)
|
|
505
|
+
public/
|
|
506
|
+
├── images/
|
|
507
|
+
│ ├── hero-background.jpg # Prepare
|
|
508
|
+
│ ├── logo.svg # Prepare
|
|
509
|
+
│ └── testimonials/
|
|
510
|
+
│ ├── testimonial-1.jpg # Prepare
|
|
511
|
+
│ ├── testimonial-2.jpg # Prepare
|
|
512
|
+
│ └── testimonial-3.jpg # Prepare
|
|
513
|
+
└── icons/
|
|
514
|
+
└── features/
|
|
515
|
+
├── feature-ai.svg # Prepare
|
|
516
|
+
├── feature-exam.svg # Prepare
|
|
517
|
+
└── feature-analytics.svg # Prepare
|
|
518
|
+
```
|
|
519
|
+
|
|
520
|
+
---
|
|
521
|
+
|
|
522
|
+
## 7. Next Steps
|
|
523
|
+
|
|
524
|
+
1. ✅ **Review this page plan**
|
|
525
|
+
- Verify component structure makes sense
|
|
526
|
+
- Check content tone and messaging
|
|
527
|
+
- Confirm asset requirements are clear
|
|
528
|
+
|
|
529
|
+
2. ✅ **Edit content draft**
|
|
530
|
+
- Adjust headlines, descriptions as needed
|
|
531
|
+
- Replace placeholder names with real testimonials (if available)
|
|
532
|
+
- Finalize CTA button text and actions
|
|
533
|
+
|
|
534
|
+
3. ✅ **Prepare assets**
|
|
535
|
+
- Gather or create all images, icons per checklist (Section 3)
|
|
536
|
+
- Optimize images for web (compress without quality loss)
|
|
537
|
+
- Place files in correct directories with exact filenames
|
|
538
|
+
|
|
539
|
+
4. ✅ **Run setup command**
|
|
540
|
+
```bash
|
|
541
|
+
/csetup landing-page
|
|
542
|
+
```
|
|
543
|
+
- This will analyze the plan and create development phases
|
|
544
|
+
|
|
545
|
+
5. ✅ **Start development**
|
|
546
|
+
```bash
|
|
547
|
+
/cdev landing-page
|
|
548
|
+
```
|
|
549
|
+
- uxui-frontend agent will read this page-plan.md
|
|
550
|
+
- Agent will skip component search (already done here)
|
|
551
|
+
- Agent will implement with real content (not lorem ipsum)
|
|
552
|
+
|
|
553
|
+
---
|
|
554
|
+
|
|
555
|
+
**Generated by:** /pageplan command
|
|
556
|
+
**Date:** 2025-01-15
|
|
557
|
+
**For:** Change ID `landing-page`
|
|
558
|
+
**Context files used:** proposal.md, prd.md, project_brief.md, STYLE_GUIDE.md
|
|
559
|
+
|
|
560
|
+
---
|
|
561
|
+
|
|
562
|
+
**END OF PAGE PLAN**
|