prprompts-flutter-generator
Version:
AI-powered Flutter development with full automation + official extension support - Generate 32 security-audited guides & auto-implement in 2-3 hours. NEW v5.1: Official Claude Code plugin with hooks, Gemini TOML commands, Qwen MCP settings. Features: Comp
317 lines (242 loc) • 8.6 kB
Markdown
---
name: Auto Generate PRD
description: Generate complete PRD from project description file (no questions)
author: PRD Auto-Generator
version: 1.0.0
tags: [prd, automation, ai-generation]
---
# Auto-Generate PRD from Project Description
## Overview
Automatically generate a complete Product Requirements Document from a simple project description file. No user interaction required - full AI inference.
## Input File Detection
Look for description files in this order:
1. File specified by user: `--file path/to/description.md`
2. `project_description.md` (root directory)
3. `docs/project_description.md`
4. `PROJECT_DESCRIPTION.md`
5. `README.md` (if contains project description)
## Inference Rules
### Step 1: Read Description File
Extract:
- App name and purpose
- Target users
- Key features (3-10)
- Special requirements (compliance, offline, etc.)
### Step 2: Infer Project Type
**Keywords → Type:**
- "patient", "doctor", "medical", "health", "HIPAA", "telemedicine" → **healthcare**
- "payment", "bank", "transaction", "credit card", "financial", "PCI" → **fintech**
- "student", "teacher", "course", "learning", "education", "FERPA" → **education**
- "delivery", "tracking", "shipping", "logistics", "fleet" → **logistics**
- "shopping", "cart", "checkout", "ecommerce", "marketplace" → **ecommerce**
- "business", "workflow", "productivity", "SaaS", "enterprise" → **saas**
- None of above → **generic**
### Step 3: Infer Compliance Requirements
**Keywords → Compliance:**
- "HIPAA", "PHI", "protected health information" → Add "hipaa"
- "PCI-DSS", "PCI", "credit card", "payment card" → Add "pci-dss"
- "GDPR", "European", "EU users", "data protection" → Add "gdpr"
- "SOX", "Sarbanes-Oxley" → Add "sox"
- "COPPA", "children under 13", "parental consent" → Add "coppa"
- "FERPA", "student records" → Add "ferpa"
- "FDA", "medical device" → Add "fda"
### Step 4: Infer Platforms
**Default:** ["ios", "android"] (if not mentioned)
**Keywords → Platforms:**
- "iOS", "iPhone", "iPad" → Add "ios"
- "Android", "Play Store" → Add "android"
- "web", "website", "browser" → Add "web"
- "desktop", "Windows", "macOS" → Add respective platform
### Step 5: Infer Authentication Method
**Keywords → Auth Method:**
- "JWT", "JSON Web Token" → **jwt**
- "OAuth", "OAuth2", "social login" → **oauth2**
- "Firebase Auth", "Google sign-in" → **firebase**
- "Auth0", "Okta" → **auth0**
**Default:** "jwt"
### Step 6: Infer Offline Support
**Keywords → offline_support: true:**
- "offline", "work without internet", "rural areas"
- "sync", "background sync", "local storage"
- "airplane mode", "poor network"
**Default:** false
### Step 7: Infer Real-Time Requirements
**Keywords → real_time: true:**
- "real-time", "live", "instant", "WebSocket"
- "chat", "messaging", "notifications"
- "live updates", "streaming", "collaborative"
**Default:** false
### Step 8: Infer Sensitive Data
**Keywords → Sensitive Data:**
- "medical records", "health data", "diagnosis" → Add "phi"
- "personal information", "PII", "name", "email" → Add "pii"
- "credit card", "payment", "bank account" → Add "payment"
- "financial data", "balance", "transaction" → Add "financial"
- "biometric", "fingerprint", "Face ID" → Add "biometric"
### Step 9: Infer Team Size
**Calculate Complexity Score (S):**
- Compliance requirements: +2 per standard
- Platforms: +1 per platform
- Real-time: +2
- Offline: +2
- Complex features (video, ML, payments): +3 each
- Basic features (CRUD, lists): +1 each
**Score → Team Size:**
- S < 10: "small" (1-5 people)
- S 10-20: "medium" (6-15 people)
- S > 20: "large" (16+ people)
### Step 10: Infer Demo Frequency
**Keywords → Demo Frequency:**
- "weekly demo", "every week" → "weekly"
- "biweekly", "every two weeks" → "biweekly"
- "monthly", "once a month" → "monthly"
- No mention → "weekly" (default)
### Step 11: Infer Features with Complexity
**Complexity Heuristic:**
- **Low:** Simple CRUD, lists, forms, settings
- **Medium:** Authentication, search, filtering, dashboards
- **High:** Real-time chat, file upload, notifications, analytics
- **Critical:** Video/audio, payments, ML/AI, medical device integration
### Step 12: Generate Complete YAML Frontmatter
```yaml
---
# AUTO-GENERATED from project description
# Generated: [timestamp]
# Source: [filename]
project_name: "[Extracted from title]"
project_version: "1.0.0"
created_date: "[today]"
last_updated: "[today]"
generation_method: "auto"
project_type: "[inferred]"
compliance: [inferred list]
platforms: [inferred list]
auth_method: "[inferred]"
jwt_config: # Only if auth_method is jwt
algorithm: "RS256"
access_token_expiry: "15m"
refresh_token_expiry: "7d"
validate_claims: ["aud", "iss", "exp", "sub"]
sensitive_data: [inferred list]
encryption_requirements:
at_rest: "AES-256-GCM"
in_transit: "TLS-1.3"
e2e_required: [true if messaging]
offline_support: [inferred]
real_time: [inferred]
state_management: "bloc"
architecture_style: "clean_architecture"
backend_type: "rest"
features: [inferred list with complexity]
team_size: "[inferred]"
team_composition: [based on team_size]
performance_targets:
cold_start_time: "2s"
frame_rate: "60fps"
api_response_time: "500ms"
testing_requirements:
unit_test_coverage: [85-90 based on compliance]
widget_test_coverage: [75-85 based on compliance]
integration_tests_required: true
demo_frequency: "[inferred]"
demo_requirements:
environment: "dedicated"
entry_point: "lib/main_demo.dart"
synthetic_data: [true if PHI/payment]
business_context:
timeline: "[calculated from complexity]"
mvp_timeline: "[40-50% of timeline]"
target_users: [10k/50k/100k based on team size]
prprompts_config:
generate_all_files: true
verbosity: "detailed"
include_junior_explanations: [true if juniors > 0]
auto_generate_subagents: true
inference_notes:
confidence_score: [0-100]
ambiguous_fields: [list]
assumptions: [list]
---
```
### Step 13: Generate Document Body
Generate complete PRD following template structure with:
1. Executive Summary (from description)
2. Product Vision (inferred)
3. Target Users (extracted or generated personas)
4. Core Features (expanded from list)
5. Non-Functional Requirements (based on inferred data)
6. Compliance Requirements (only for inferred standards)
7. Technical Architecture
8. Testing Strategy
9. Timeline & Milestones
10. All other standard sections
### Step 14: Add AI Inference Notes Section
At end of PRD:
```markdown
## 18. AI Inference Notes
**Generation Method:** Automatic (from project description)
**Inference Confidence:** [High/Medium/Low]
**Key Inferences:**
- Project Type: [type] (keywords: [list])
- Compliance: [list] (keywords: [list])
- Offline Support: [true/false] (reason: [explanation])
- Real-Time: [true/false] (reason: [explanation])
**Ambiguous Areas:**
[List low-confidence areas]
**Recommended Reviews:**
- [ ] Verify compliance requirements
- [ ] Review feature priorities
- [ ] Confirm timeline estimates
- [ ] Validate team size
**Manual Customization:**
To customize this auto-generated PRD:
1. Edit docs/PRD.md
2. Update YAML frontmatter
3. Regenerate PRPROMPTS: claude gen-prprompts
```
## Output File
Save complete PRD to: `docs/PRD.md`
## Success Message
```
✅ Auto-generated PRD from [filename]
Generated docs/PRD.md with:
- Project Type: [type]
- Compliance: [list or "None"]
- Platforms: [list]
- Features: [count] ([X] P0, [Y] P1)
- Team Size: [size]
- Timeline: [duration] (MVP: [duration])
Inference Confidence: [High/Medium/Low]
[If Medium/Low:]
⚠️ Some fields inferred with low confidence.
Review section 18 (AI Inference Notes).
Next steps:
1. Review: cat docs/PRD.md
2. Customize if needed: vim docs/PRD.md
3. Analyze: claude analyze-prd
4. Generate PRPROMPTS: claude gen-prprompts
Auto-generate PRPROMPTS now? (y/n)
```
## Error Handling
### If description file not found:
```
❌ Error: No project description file found.
Searched locations:
- project_description.md
- docs/project_description.md
- PROJECT_DESCRIPTION.md
Please create a project description file with:
- What the app does
- Target users
- Key features (3-10)
Or specify file: claude auto-gen-prd --file path/to/description.md
```
### If description too vague:
```
⚠️ Warning: Low confidence in inference
Generated PRD with best guesses. Low confidence areas:
- Project type (assumed: generic)
- Compliance (none detected)
- Platforms (assumed: iOS + Android)
Please review docs/PRD.md and update as needed.
```