gigaspec 4.0.0
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/.cursorrules +12 -0
- package/.env.example +4 -0
- package/AGENT.md +114 -0
- package/ARCHITECTURE.md +71 -0
- package/CLAUDE.md +6 -0
- package/DEPLOYMENT.md +70 -0
- package/ENVIRONMENT.md +40 -0
- package/EXAMPLE.md +390 -0
- package/GETTING_STARTED.md +153 -0
- package/IMPLEMENTATION_SUMMARY.md +261 -0
- package/LICENSE +201 -0
- package/PLAN.md +37 -0
- package/README.md +286 -0
- package/SETUP.md +64 -0
- package/STATE.md +53 -0
- package/WORKFLOW.md +41 -0
- package/bin/gigaspec.js +459 -0
- package/bin/mcp-server.js +393 -0
- package/lib/ai-workflow.js +423 -0
- package/lib/framework.js +970 -0
- package/lib/index.js +19 -0
- package/lib/templates.js +1034 -0
- package/logo.svg +55 -0
- package/package.json +46 -0
- package/prompts/fix.md +2 -0
- package/prompts/implement.md +2 -0
- package/prompts/plan.md +2 -0
- package/prompts/verify.md +2 -0
package/.cursorrules
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# Gigaspec - Cursor Rules
|
|
2
|
+
## ALWAYS
|
|
3
|
+
1. Read STATE.md first
|
|
4
|
+
2. Check AGENT.md constraints
|
|
5
|
+
3. Max 10 lines per function
|
|
6
|
+
## NEVER
|
|
7
|
+
1. Skip verification
|
|
8
|
+
2. Update STATE.md without CONFIRMED
|
|
9
|
+
## COMMANDS
|
|
10
|
+
- "Familiarize yourself" - Read all docs
|
|
11
|
+
- "CONTINUE" - Next task from STATE.md
|
|
12
|
+
- "STATUS" - Current state
|
package/.env.example
ADDED
package/AGENT.md
ADDED
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
# AGENT.md - AI Coding Standards & Constraints
|
|
2
|
+
|
|
3
|
+
> **Project**: Gigaspec
|
|
4
|
+
> **Stack**: Node.js/Express
|
|
5
|
+
> **Last Updated**: 2026-02-18
|
|
6
|
+
|
|
7
|
+
This document is the BIBLE for AI agents working on this project.
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## ๐ Golden Rules (Non-Negotiable)
|
|
12
|
+
|
|
13
|
+
1. **Max 10 lines per function** - Extract helpers if needed
|
|
14
|
+
2. **Max 3 arguments per function** - Use structs/objects for complex inputs
|
|
15
|
+
3. **No nested conditionals deeper than 2 levels** - Flatten with early returns
|
|
16
|
+
4. **All public functions must have types/docs**
|
|
17
|
+
5. **Explicit error handling** - No silent failures
|
|
18
|
+
6. **Emit events for state changes** - Audit trail is mandatory
|
|
19
|
+
7. **Write tests with implementation** - Not after
|
|
20
|
+
8. **No code without verification** - All checks must pass
|
|
21
|
+
|
|
22
|
+
---
|
|
23
|
+
|
|
24
|
+
## ๐ ๏ธ Stack-Specific Patterns
|
|
25
|
+
|
|
26
|
+
### Node.js/Express
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
```typescript
|
|
30
|
+
// โ
DO: Use explicit return types
|
|
31
|
+
async function createUser(data: CreateUserInput): Promise<Result<User, Error>> {
|
|
32
|
+
const validated = await validate(data);
|
|
33
|
+
if (!validated.success) {
|
|
34
|
+
return { success: false, error: validated.error };
|
|
35
|
+
}
|
|
36
|
+
return { success: true, data: await db.user.create(validated.data) };
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
// โ
DO: Use Result types
|
|
40
|
+
type Result<T, E> =
|
|
41
|
+
| { success: true; data: T }
|
|
42
|
+
| { success: false; error: E };
|
|
43
|
+
|
|
44
|
+
// โ DON'T: Throw for expected errors
|
|
45
|
+
function getUser(id: string) {
|
|
46
|
+
if (!id) throw new Error('Invalid ID'); // Don't do this
|
|
47
|
+
}
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
---
|
|
51
|
+
|
|
52
|
+
## ๐ซ Forbidden Patterns
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
| Pattern | Why Forbidden | Alternative |
|
|
56
|
+
|---------|---------------|-------------|
|
|
57
|
+
| `any` type | Loses type safety | Use proper types or `unknown` |
|
|
58
|
+
| `console.log` in production | No structured logging | Use winston/pino |
|
|
59
|
+
| `==` instead of `===` | Type coercion bugs | Always use `===` |
|
|
60
|
+
| Callback hell | Hard to read | Use async/await |
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
## ๐งช Testing Requirements
|
|
66
|
+
|
|
67
|
+
- **Unit tests**: >90% line coverage
|
|
68
|
+
- **Integration tests**: All API endpoints
|
|
69
|
+
- **E2E tests**: Critical user flows
|
|
70
|
+
|
|
71
|
+
---
|
|
72
|
+
|
|
73
|
+
## โก Performance Constraints
|
|
74
|
+
|
|
75
|
+
| Metric | Target | Maximum |
|
|
76
|
+
|--------|--------|---------|
|
|
77
|
+
| p50 response | <50ms | 100ms |
|
|
78
|
+
| p95 response | <200ms | 500ms |
|
|
79
|
+
| p99 response | <500ms | 1000ms |
|
|
80
|
+
| Database query | <10ms | 50ms |
|
|
81
|
+
|
|
82
|
+
---
|
|
83
|
+
|
|
84
|
+
## ๐ Verification Commands
|
|
85
|
+
|
|
86
|
+
|
|
87
|
+
```bash
|
|
88
|
+
# Run all checks
|
|
89
|
+
npm run lint && npm run type-check && npm run test
|
|
90
|
+
|
|
91
|
+
# Linting
|
|
92
|
+
npm run lint
|
|
93
|
+
|
|
94
|
+
# Type checking
|
|
95
|
+
npx tsc --noEmit
|
|
96
|
+
|
|
97
|
+
# Testing
|
|
98
|
+
npm test
|
|
99
|
+
|
|
100
|
+
# Coverage
|
|
101
|
+
npm run test:coverage
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
---
|
|
105
|
+
|
|
106
|
+
## ๐ Code Review Checklist
|
|
107
|
+
|
|
108
|
+
- [ ] All functions <10 lines
|
|
109
|
+
- [ ] All public functions documented
|
|
110
|
+
- [ ] Error handling explicit
|
|
111
|
+
- [ ] No forbidden patterns
|
|
112
|
+
- [ ] Tests pass (>90% coverage)
|
|
113
|
+
- [ ] Static analysis passes
|
|
114
|
+
- [ ] STATE.md updated (if needed)
|
package/ARCHITECTURE.md
ADDED
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
# ARCHITECTURE.md - System Design
|
|
2
|
+
|
|
3
|
+
> **Project**: Gigaspec
|
|
4
|
+
> **Stack**: Node.js/Express
|
|
5
|
+
> **Last Updated**: 2026-02-18
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## ๐ Overview
|
|
10
|
+
|
|
11
|
+
Gigaspec is built with Node.js/Express, using PostgreSQL for data storage and Redis for caching.
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## ๐๏ธ Component Diagram
|
|
16
|
+
|
|
17
|
+
```
|
|
18
|
+
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
19
|
+
โ CLIENT โ
|
|
20
|
+
โ โโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโ โ
|
|
21
|
+
โ โ Web App โ โ Mobile App โ โ API Clientsโ โ
|
|
22
|
+
โ โ (React/Next.js) โ โ โ โ โ โ
|
|
23
|
+
โ โโโโโโโโฌโโโโโโโโ โโโโโโโโฌโโโโโโโโ โโโโโโโโฌโโโโโโโโ โ
|
|
24
|
+
โโโโโโโโโโโผโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโ
|
|
25
|
+
โ โ โ
|
|
26
|
+
โโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโ
|
|
27
|
+
โ HTTPS/JSON
|
|
28
|
+
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
29
|
+
โ API LAYER โ
|
|
30
|
+
โ (Node.js/Express) โ
|
|
31
|
+
โ โโโโโโโโโโโโโโ โโโโโโโโโโโโโโ โโโโโโโโโโโโโโ โ
|
|
32
|
+
โ โ Auth โ โ API โ โ WebSocket โ โ
|
|
33
|
+
โ โ Module โ โ Routes โ โ Handler โ โ
|
|
34
|
+
โ โโโโโโโฌโโโโโโโ โโโโโโโฌโโโโโโโ โโโโโโโฌโโโโโโโ โ
|
|
35
|
+
โโโโโโโโโโผโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโ
|
|
36
|
+
โ โ โ
|
|
37
|
+
โโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโ
|
|
38
|
+
โ
|
|
39
|
+
โโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
40
|
+
โ DATA LAYER โ
|
|
41
|
+
โ โโโโโโโโโโโโโโ โโโโโโโโโโโโโโ โโโโโโโโโโโโโโ โ
|
|
42
|
+
โ โ PostgreSQL โ โ Redis โ โ External โ โ
|
|
43
|
+
โ โ (Primary) โ โ (Cache) โ โ Services โ โ
|
|
44
|
+
โ โโโโโโโโโโโโโโ โโโโโโโโโโโโโโ โโโโโโโโโโโโโโ โ
|
|
45
|
+
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
---
|
|
49
|
+
|
|
50
|
+
## ๐พ Database Schema
|
|
51
|
+
|
|
52
|
+
Key entities:
|
|
53
|
+
- **Users** - Authentication and profiles
|
|
54
|
+
- **Sessions** - User sessions and tokens
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
---
|
|
59
|
+
|
|
60
|
+
## ๐ External Services
|
|
61
|
+
|
|
62
|
+
- None required for MVP
|
|
63
|
+
|
|
64
|
+
---
|
|
65
|
+
|
|
66
|
+
## ๐ Security
|
|
67
|
+
|
|
68
|
+
- JWT-based authentication
|
|
69
|
+
- HTTPS only in production
|
|
70
|
+
- Input validation at API boundaries
|
|
71
|
+
- Parameterized queries (SQL injection prevention)
|
package/CLAUDE.md
ADDED
package/DEPLOYMENT.md
ADDED
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
# DEPLOYMENT.md - Production Deployment
|
|
2
|
+
|
|
3
|
+
> **Project**: Gigaspec
|
|
4
|
+
> **Platform**: Railway
|
|
5
|
+
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## ๐ Deployment
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
# Install Railway CLI
|
|
13
|
+
npm install -g @railway/cli
|
|
14
|
+
|
|
15
|
+
# Login
|
|
16
|
+
railway login
|
|
17
|
+
|
|
18
|
+
# Link project
|
|
19
|
+
railway link
|
|
20
|
+
|
|
21
|
+
# Deploy
|
|
22
|
+
railway up
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
## โ๏ธ Configuration
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
```json
|
|
31
|
+
// railway.json
|
|
32
|
+
{
|
|
33
|
+
"$schema": "https://railway.app/railway.schema.json",
|
|
34
|
+
"build": {
|
|
35
|
+
"builder": "NIXPACKS"
|
|
36
|
+
},
|
|
37
|
+
"deploy": {
|
|
38
|
+
"startCommand": "npm start"
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
---
|
|
44
|
+
|
|
45
|
+
## ๐ Environment Variables
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
# Set secrets
|
|
49
|
+
railway variables set SECRET_KEY_BASE="$(openssl rand -hex 48)"
|
|
50
|
+
railway variables set DATABASE_URL="[your-db-url]"
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
---
|
|
54
|
+
|
|
55
|
+
## โฉ๏ธ Rollback
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
# Rollback to previous version
|
|
59
|
+
railway rollback
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
---
|
|
63
|
+
|
|
64
|
+
## ๐ฐ Cost Estimates
|
|
65
|
+
|
|
66
|
+
| Resource | Monthly Cost |
|
|
67
|
+
|----------|--------------|
|
|
68
|
+
| Compute | ~$20-50 |
|
|
69
|
+
| Database | ~$15-30 |
|
|
70
|
+
| **Total** | **~$35-80** |
|
package/ENVIRONMENT.md
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# ENVIRONMENT.md - Secrets & Configuration
|
|
2
|
+
|
|
3
|
+
> **Project**: Gigaspec
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## ๐ Required Variables
|
|
8
|
+
|
|
9
|
+
| Variable | Purpose | How to Obtain |
|
|
10
|
+
|----------|---------|---------------|
|
|
11
|
+
| `SECRET_KEY_BASE` | Session encryption | `openssl rand -hex 48` |
|
|
12
|
+
| `DATABASE_URL` | Database connection | From Railway dashboard |
|
|
13
|
+
| `REDIS_URL` | Cache connection | From Railway dashboard |
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
## ๐ฅ๏ธ Local Development
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
# Copy example environment
|
|
22
|
+
cp .env.example .env
|
|
23
|
+
|
|
24
|
+
# Edit with your values
|
|
25
|
+
nano .env
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
---
|
|
29
|
+
|
|
30
|
+
## ๐ Production
|
|
31
|
+
|
|
32
|
+
Railway handles secrets securely. Never commit `.env` to git.
|
|
33
|
+
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
## โ ๏ธ Security
|
|
37
|
+
|
|
38
|
+
- NEVER commit secrets to git
|
|
39
|
+
- Rotate API keys every 90 days
|
|
40
|
+
- Use different keys for each environment
|
package/EXAMPLE.md
ADDED
|
@@ -0,0 +1,390 @@
|
|
|
1
|
+
# gigaspec AI Collaboration - Example Workflow
|
|
2
|
+
|
|
3
|
+
This shows how an AI assistant (Claude, Kimi, etc.) collaborates with a user through the gigaspec framework.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## User Story: Building a Math Learning App
|
|
8
|
+
|
|
9
|
+
### Step 1: User Describes Project
|
|
10
|
+
|
|
11
|
+
```
|
|
12
|
+
User: "I want to build a math learning app for kids. It should have
|
|
13
|
+
interactive lessons, progress tracking, and a reward system. Parents
|
|
14
|
+
should be able to see their child's progress."
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
### Step 2: AI Creates Analysis Prompt
|
|
18
|
+
|
|
19
|
+
The AI runs gigaspec to create an analysis prompt:
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
$ gigaspec analyze "math learning app for kids with interactive lessons,
|
|
23
|
+
progress tracking, and reward system. Parents can see progress"
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
**Output (analysis-prompt.txt):**
|
|
27
|
+
```
|
|
28
|
+
You are a Staff+ Engineer and Technical Architect.
|
|
29
|
+
Your task is to analyze a project description and make intelligent technical decisions.
|
|
30
|
+
|
|
31
|
+
PROJECT DESCRIPTION:
|
|
32
|
+
math learning app for kids with interactive lessons, progress tracking,
|
|
33
|
+
and reward system. Parents can see progress
|
|
34
|
+
|
|
35
|
+
Analyze this project deeply. Consider:
|
|
36
|
+
|
|
37
|
+
1. WHAT is being built? (Core functionality, user flows)
|
|
38
|
+
2. WHO are the users? (End users, admins, scale)
|
|
39
|
+
3. WHAT are the constraints? (Performance, security, compliance)
|
|
40
|
+
4. WHAT are the integrations? (External APIs, services)
|
|
41
|
+
5. WHAT is the timeline and team size?
|
|
42
|
+
|
|
43
|
+
Based on your analysis, answer these questions:
|
|
44
|
+
|
|
45
|
+
--- ANALYSIS ---
|
|
46
|
+
|
|
47
|
+
Core Purpose: [What is the fundamental problem being solved?]
|
|
48
|
+
|
|
49
|
+
User Types: [Who will use this? How many?]
|
|
50
|
+
|
|
51
|
+
Key Features: [What are the 3-5 most important features?]
|
|
52
|
+
|
|
53
|
+
Technical Challenges: [What will be hardest to build?]
|
|
54
|
+
|
|
55
|
+
Scale Expectations: [How many users? What traffic?]
|
|
56
|
+
|
|
57
|
+
--- TECHNICAL DECISIONS ---
|
|
58
|
+
|
|
59
|
+
Recommended Stack: [Language/Framework with specific version]
|
|
60
|
+
Why: [Explain your reasoning based on the analysis]
|
|
61
|
+
|
|
62
|
+
Alternative Stacks: [2 other options with pros/cons]
|
|
63
|
+
|
|
64
|
+
Database: [Which database and why]
|
|
65
|
+
|
|
66
|
+
Cache Strategy: [What to cache and how]
|
|
67
|
+
|
|
68
|
+
External Services: [What 3rd party services are needed?]
|
|
69
|
+
|
|
70
|
+
Deployment Platform: [Where to deploy and why]
|
|
71
|
+
|
|
72
|
+
--- QUESTIONS FOR USER ---
|
|
73
|
+
|
|
74
|
+
What questions do you have that would help you make better recommendations?
|
|
75
|
+
List 3-5 specific questions.
|
|
76
|
+
|
|
77
|
+
--- CONFIDENCE ---
|
|
78
|
+
How confident are you in these recommendations? (High/Medium/Low)
|
|
79
|
+
What information would increase your confidence?
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
### Step 3: AI Analyzes and Asks Questions
|
|
83
|
+
|
|
84
|
+
The AI (Claude/Kimi) analyzes the prompt and responds:
|
|
85
|
+
|
|
86
|
+
```
|
|
87
|
+
AI: I've analyzed your math learning app. Here's my assessment:
|
|
88
|
+
|
|
89
|
+
--- ANALYSIS ---
|
|
90
|
+
|
|
91
|
+
Core Purpose: An educational platform that makes math learning engaging
|
|
92
|
+
for children through interactive content, while giving parents visibility
|
|
93
|
+
into their child's progress.
|
|
94
|
+
|
|
95
|
+
User Types:
|
|
96
|
+
- Primary: Children (ages 6-12) - the learners
|
|
97
|
+
- Secondary: Parents - monitoring progress
|
|
98
|
+
- Tertiary: Teachers (potential future feature)
|
|
99
|
+
|
|
100
|
+
Key Features:
|
|
101
|
+
1. Interactive math lessons with visual explanations
|
|
102
|
+
2. Progress tracking and analytics
|
|
103
|
+
3. Reward/gamification system (badges, points)
|
|
104
|
+
4. Parent dashboard with progress reports
|
|
105
|
+
5. User management (child accounts linked to parents)
|
|
106
|
+
|
|
107
|
+
Technical Challenges:
|
|
108
|
+
- Real-time progress sync between child and parent views
|
|
109
|
+
- Handling media (images, animations for lessons)
|
|
110
|
+
- GDPR/COPPA compliance for children's data
|
|
111
|
+
- Offline capability for learning on-the-go
|
|
112
|
+
|
|
113
|
+
Scale Expectations:
|
|
114
|
+
- Start: 100-1000 users
|
|
115
|
+
- Growth: 10K-100K users within 2 years
|
|
116
|
+
- Traffic: Moderate, mostly read-heavy
|
|
117
|
+
|
|
118
|
+
--- TECHNICAL DECISIONS ---
|
|
119
|
+
|
|
120
|
+
Recommended Stack: Node.js 18 + Next.js 14
|
|
121
|
+
Why:
|
|
122
|
+
- Next.js provides excellent developer experience for React apps
|
|
123
|
+
- Easy deployment to Vercel (optimized for Next.js)
|
|
124
|
+
- Great ecosystem for auth (NextAuth.js)
|
|
125
|
+
- Good performance for interactive content
|
|
126
|
+
|
|
127
|
+
Alternative Stacks:
|
|
128
|
+
1. Elixir/Phoenix - Better for real-time, but steeper learning curve
|
|
129
|
+
2. Python/Django - Great for data/analytics, less optimal for interactive UI
|
|
130
|
+
|
|
131
|
+
Database: PostgreSQL 15
|
|
132
|
+
Why: Reliable, great JSON support for flexible lesson content,
|
|
133
|
+
excellent analytics capabilities for progress tracking
|
|
134
|
+
|
|
135
|
+
Cache Strategy: Redis for session management and frequently accessed
|
|
136
|
+
lesson data. CDN for static assets (images, videos).
|
|
137
|
+
|
|
138
|
+
External Services:
|
|
139
|
+
- Auth0 or Clerk (authentication)
|
|
140
|
+
- Stripe (subscriptions if monetized)
|
|
141
|
+
- SendGrid (email notifications to parents)
|
|
142
|
+
- Cloudflare R2 or AWS S3 (media storage)
|
|
143
|
+
- Vercel (hosting)
|
|
144
|
+
|
|
145
|
+
Deployment Platform: Vercel
|
|
146
|
+
Why: Optimized for Next.js, automatic preview deployments,
|
|
147
|
+
edge network for global performance
|
|
148
|
+
|
|
149
|
+
--- QUESTIONS FOR USER ---
|
|
150
|
+
|
|
151
|
+
1. What's your target age range for children? (affects UI/UX complexity)
|
|
152
|
+
2. Do you need offline capability for lessons?
|
|
153
|
+
3. Will this be free or subscription-based?
|
|
154
|
+
4. Any specific compliance requirements (COPPA, GDPR-K)?
|
|
155
|
+
5. Do you have a preference for mobile app vs web app?
|
|
156
|
+
|
|
157
|
+
--- CONFIDENCE ---
|
|
158
|
+
Confidence: Medium-High
|
|
159
|
+
I'd be more confident with answers to the questions above.
|
|
160
|
+
```
|
|
161
|
+
|
|
162
|
+
### Step 4: User Answers Questions
|
|
163
|
+
|
|
164
|
+
```
|
|
165
|
+
User:
|
|
166
|
+
1. Ages 8-12
|
|
167
|
+
2. Yes, offline would be great
|
|
168
|
+
3. Freemium model
|
|
169
|
+
4. Yes, COPPA compliance needed
|
|
170
|
+
5. Web app first, maybe mobile later
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
### Step 5: AI Refines Recommendations
|
|
174
|
+
|
|
175
|
+
The AI updates its analysis:
|
|
176
|
+
|
|
177
|
+
```
|
|
178
|
+
AI: Thank you! Based on your answers, I've refined my recommendations:
|
|
179
|
+
|
|
180
|
+
--- REFINED ANALYSIS ---
|
|
181
|
+
|
|
182
|
+
Target: Ages 8-12 means we can use more complex UI patterns than
|
|
183
|
+
for younger kids, but still need engaging visuals.
|
|
184
|
+
|
|
185
|
+
Offline capability suggests:
|
|
186
|
+
- Service Workers for caching
|
|
187
|
+
- Local storage for progress
|
|
188
|
+
- Sync when back online
|
|
189
|
+
|
|
190
|
+
Freemium + COPPA means:
|
|
191
|
+
- Parent consent flows required
|
|
192
|
+
- Careful data handling
|
|
193
|
+
- Stripe for payments (COPPA compliant)
|
|
194
|
+
|
|
195
|
+
--- FINAL TECHNICAL STACK ---
|
|
196
|
+
|
|
197
|
+
Stack: Node.js 18 + Next.js 14 with PWA capabilities
|
|
198
|
+
Frontend: React 18 + Tailwind CSS + Framer Motion (animations)
|
|
199
|
+
Database: PostgreSQL 15 (Supabase for easy setup)
|
|
200
|
+
Cache: Redis (Upstash for serverless)
|
|
201
|
+
Services:
|
|
202
|
+
- Clerk (auth with COPPA compliance)
|
|
203
|
+
- Stripe (payments)
|
|
204
|
+
- SendGrid (emails)
|
|
205
|
+
- Cloudflare R2 (media)
|
|
206
|
+
- Supabase (database + realtime)
|
|
207
|
+
Deployment: Vercel (with edge functions)
|
|
208
|
+
|
|
209
|
+
--- RATIONALE ---
|
|
210
|
+
|
|
211
|
+
Next.js PWA gives us offline capability through service workers.
|
|
212
|
+
Supabase provides PostgreSQL + realtime subscriptions for progress sync.
|
|
213
|
+
Clerk has built-in COPPA compliance features.
|
|
214
|
+
Vercel edge functions keep API routes close to users globally.
|
|
215
|
+
|
|
216
|
+
--- TIMELINE BREAKDOWN ---
|
|
217
|
+
|
|
218
|
+
Phase 1 (Weeks 1-3): Foundation
|
|
219
|
+
- Setup Next.js project with PWA config
|
|
220
|
+
- Setup Supabase database schema
|
|
221
|
+
- Implement Clerk authentication
|
|
222
|
+
- Basic lesson content structure
|
|
223
|
+
|
|
224
|
+
Phase 2 (Weeks 4-7): Core Features
|
|
225
|
+
- Interactive lesson player
|
|
226
|
+
- Progress tracking system
|
|
227
|
+
- Parent dashboard
|
|
228
|
+
- Reward/badge system
|
|
229
|
+
|
|
230
|
+
Phase 3 (Weeks 8-10): Polish & Compliance
|
|
231
|
+
- COPPA compliance implementation
|
|
232
|
+
- Offline sync logic
|
|
233
|
+
- Payment integration (Stripe)
|
|
234
|
+
- Email notifications
|
|
235
|
+
|
|
236
|
+
Phase 4 (Weeks 11-12): Launch Prep
|
|
237
|
+
- Performance optimization
|
|
238
|
+
- Testing & bug fixes
|
|
239
|
+
- Deployment & monitoring
|
|
240
|
+
|
|
241
|
+
--- RISKS & MITIGATION ---
|
|
242
|
+
|
|
243
|
+
Risk: COPPA compliance complexity
|
|
244
|
+
Mitigation: Use Clerk's COPPA features, consult legal early
|
|
245
|
+
|
|
246
|
+
Risk: Offline sync conflicts
|
|
247
|
+
Mitigation: Implement conflict resolution strategy, last-write-wins
|
|
248
|
+
|
|
249
|
+
Risk: Media storage costs
|
|
250
|
+
Mitigation: Compress images, use R2 (cheaper than S3)
|
|
251
|
+
```
|
|
252
|
+
|
|
253
|
+
### Step 6: User Approves
|
|
254
|
+
|
|
255
|
+
```
|
|
256
|
+
User: "This looks great! Let's proceed with this stack."
|
|
257
|
+
```
|
|
258
|
+
|
|
259
|
+
### Step 7: AI Generates Specification
|
|
260
|
+
|
|
261
|
+
The AI runs gigaspec to generate all documentation:
|
|
262
|
+
|
|
263
|
+
```bash
|
|
264
|
+
$ gigaspec generate \
|
|
265
|
+
--name "MathLearn" \
|
|
266
|
+
--stack "Node.js 18 + Next.js 14" \
|
|
267
|
+
--frontend "React 18 + Tailwind" \
|
|
268
|
+
--database "PostgreSQL 15 (Supabase)" \
|
|
269
|
+
--cache "Redis (Upstash)" \
|
|
270
|
+
--services "Clerk,Stripe,SendGrid,R2,Supabase" \
|
|
271
|
+
--deploy "Vercel" \
|
|
272
|
+
--weeks "12"
|
|
273
|
+
```
|
|
274
|
+
|
|
275
|
+
**Output:**
|
|
276
|
+
```
|
|
277
|
+
[1/1] Generating specification files
|
|
278
|
+
โ AGENT.md
|
|
279
|
+
โ ARCHITECTURE.md
|
|
280
|
+
โ PLAN.md
|
|
281
|
+
โ STATE.md
|
|
282
|
+
โ WORKFLOW.md
|
|
283
|
+
โ SETUP.md
|
|
284
|
+
โ DEPLOYMENT.md
|
|
285
|
+
โ ENVIRONMENT.md
|
|
286
|
+
โ scripts/validate-state.sh
|
|
287
|
+
โ .hooks/pre-commit
|
|
288
|
+
โ .github/workflows/ai-compliance.yml
|
|
289
|
+
โ prompts/{plan,implement,verify,fix}.md
|
|
290
|
+
โ .cursorrules
|
|
291
|
+
โ CLAUDE.md
|
|
292
|
+
|
|
293
|
+
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
294
|
+
โ Files generated!
|
|
295
|
+
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
296
|
+
```
|
|
297
|
+
|
|
298
|
+
### Step 8: Project Structure
|
|
299
|
+
|
|
300
|
+
```
|
|
301
|
+
math-learn/
|
|
302
|
+
โโโ AGENT.md # AI coding standards for Next.js
|
|
303
|
+
โโโ ARCHITECTURE.md # System design with PWA architecture
|
|
304
|
+
โโโ PLAN.md # 12-week roadmap
|
|
305
|
+
โโโ STATE.md # Current project status
|
|
306
|
+
โโโ WORKFLOW.md # AI development protocols
|
|
307
|
+
โโโ SETUP.md # Local development guide
|
|
308
|
+
โโโ DEPLOYMENT.md # Vercel deployment guide
|
|
309
|
+
โโโ ENVIRONMENT.md # Secrets management
|
|
310
|
+
โโโ CLAUDE.md # Claude Code guide
|
|
311
|
+
โโโ .cursorrules # Cursor IDE rules
|
|
312
|
+
โโโ .env.example # Environment template
|
|
313
|
+
โโโ .gitignore # Git ignore
|
|
314
|
+
โโโ scripts/
|
|
315
|
+
โ โโโ validate-state.sh
|
|
316
|
+
โโโ .hooks/
|
|
317
|
+
โ โโโ pre-commit
|
|
318
|
+
โโโ .github/workflows/
|
|
319
|
+
โ โโโ ai-compliance.yml
|
|
320
|
+
โโโ prompts/
|
|
321
|
+
โโโ plan.md
|
|
322
|
+
โโโ implement.md
|
|
323
|
+
โโโ verify.md
|
|
324
|
+
โโโ fix.md
|
|
325
|
+
```
|
|
326
|
+
|
|
327
|
+
### Step 9: Development Begins
|
|
328
|
+
|
|
329
|
+
```
|
|
330
|
+
User: "What should I work on first?"
|
|
331
|
+
|
|
332
|
+
AI: Let me check the project status.
|
|
333
|
+
|
|
334
|
+
[AI runs: gigaspec status]
|
|
335
|
+
|
|
336
|
+
AI: You're in Phase 1 (Foundation). The next priority tasks are:
|
|
337
|
+
1. Set up Next.js project with PWA config
|
|
338
|
+
2. Setup Supabase database schema
|
|
339
|
+
3. Implement Clerk authentication
|
|
340
|
+
|
|
341
|
+
Shall I help you with the first task?
|
|
342
|
+
|
|
343
|
+
User: "Yes, let's set up the project."
|
|
344
|
+
|
|
345
|
+
AI: [Proceeds to help implement following AGENT.md standards]
|
|
346
|
+
```
|
|
347
|
+
|
|
348
|
+
---
|
|
349
|
+
|
|
350
|
+
## Key Differences from Keyword Detection
|
|
351
|
+
|
|
352
|
+
| Keyword Detection | AI Collaboration |
|
|
353
|
+
|------------------|------------------|
|
|
354
|
+
| "real-time" โ Elixir | AI analyzes: "Do we actually need real-time?" |
|
|
355
|
+
| "ml" โ Python | AI analyzes: "What kind of ML? Is it needed now?" |
|
|
356
|
+
| Static rules | Dynamic questions and reasoning |
|
|
357
|
+
| One-size-fits-all | Tailored to specific requirements |
|
|
358
|
+
| No clarification | Asks questions to understand better |
|
|
359
|
+
|
|
360
|
+
---
|
|
361
|
+
|
|
362
|
+
## How the Framework Helps
|
|
363
|
+
|
|
364
|
+
1. **Structured Analysis**: The framework provides prompts that guide the AI to think deeply about requirements
|
|
365
|
+
|
|
366
|
+
2. **Question-Answer Flow**: The AI can ask clarifying questions instead of guessing
|
|
367
|
+
|
|
368
|
+
3. **Transparent Reasoning**: The AI explains WHY it made each recommendation
|
|
369
|
+
|
|
370
|
+
4. **Human Approval**: User reviews and approves before proceeding
|
|
371
|
+
|
|
372
|
+
5. **Complete Documentation**: Once approved, all 8 specification files are generated
|
|
373
|
+
|
|
374
|
+
---
|
|
375
|
+
|
|
376
|
+
## For AI Assistants
|
|
377
|
+
|
|
378
|
+
When using gigaspec, the AI should:
|
|
379
|
+
|
|
380
|
+
1. **Run analysis**: `gigaspec analyze "description"`
|
|
381
|
+
2. **Think deeply**: Analyze requirements, don't just match keywords
|
|
382
|
+
3. **Ask questions**: Use the question section to clarify
|
|
383
|
+
4. **Explain reasoning**: Show why you made each recommendation
|
|
384
|
+
5. **Get approval**: Wait for user confirmation
|
|
385
|
+
6. **Generate docs**: `gigaspec generate --stack "..."`
|
|
386
|
+
7. **Follow specs**: During development, follow AGENT.md standards
|
|
387
|
+
|
|
388
|
+
---
|
|
389
|
+
|
|
390
|
+
*This is AI-human collaboration, not automation.*
|