ai-flow-dev 1.0.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.
Files changed (99) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +408 -0
  3. package/dist/cli.d.ts +3 -0
  4. package/dist/cli.d.ts.map +1 -0
  5. package/dist/cli.js +791 -0
  6. package/dist/cli.js.map +1 -0
  7. package/dist/fs-utils.d.ts +2 -0
  8. package/dist/fs-utils.d.ts.map +1 -0
  9. package/dist/fs-utils.js +46 -0
  10. package/dist/fs-utils.js.map +1 -0
  11. package/package.json +71 -0
  12. package/prompts/backend/flow-dev-feature.md +1318 -0
  13. package/prompts/backend/flow-dev-fix.md +903 -0
  14. package/prompts/backend/flow-dev-refactor.md +715 -0
  15. package/prompts/backend/flow-dev-review.md +401 -0
  16. package/prompts/backend/flow-dev-work.md +1129 -0
  17. package/prompts/backend/flow-docs-gen-phase-0.md +1840 -0
  18. package/prompts/backend/flow-docs-gen-phase-1.md +435 -0
  19. package/prompts/backend/flow-docs-gen-phase-2.md +460 -0
  20. package/prompts/backend/flow-docs-gen-phase-3.md +684 -0
  21. package/prompts/backend/flow-docs-gen-phase-4.md +516 -0
  22. package/prompts/backend/flow-docs-gen-phase-5.md +637 -0
  23. package/prompts/backend/flow-docs-gen-phase-6.md +465 -0
  24. package/prompts/backend/flow-docs-gen-phase-7.md +1207 -0
  25. package/prompts/backend/flow-docs-gen.md +820 -0
  26. package/prompts/backend/flow-docs-sync.md +526 -0
  27. package/prompts/backend/flow-project-init.md +248 -0
  28. package/prompts/backend/flow-project-roadmap.md +1159 -0
  29. package/prompts/frontend/flow-docs-gen-phase-0.md +494 -0
  30. package/prompts/frontend/flow-docs-gen-phase-1.md +449 -0
  31. package/prompts/frontend/flow-docs-gen-phase-2.md +983 -0
  32. package/prompts/frontend/flow-docs-gen-phase-3.md +685 -0
  33. package/prompts/frontend/flow-docs-gen-phase-4.md +480 -0
  34. package/prompts/frontend/flow-docs-gen-phase-5.md +483 -0
  35. package/prompts/frontend/flow-docs-gen-phase-6.md +570 -0
  36. package/prompts/frontend/flow-docs-gen-phase-7.md +582 -0
  37. package/prompts/frontend/flow-docs-gen.md +413 -0
  38. package/prompts/frontend/flow-docs-sync.md +561 -0
  39. package/prompts/mobile/flow-docs-gen-phase-0.md +387 -0
  40. package/prompts/mobile/flow-docs-gen-phase-1.md +530 -0
  41. package/prompts/mobile/flow-docs-gen-phase-2.md +584 -0
  42. package/prompts/mobile/flow-docs-gen-phase-3.md +659 -0
  43. package/prompts/mobile/flow-docs-gen-phase-4.md +363 -0
  44. package/prompts/mobile/flow-docs-gen-phase-5.md +369 -0
  45. package/prompts/mobile/flow-docs-gen-phase-6.md +490 -0
  46. package/prompts/mobile/flow-docs-gen-phase-7.md +407 -0
  47. package/prompts/mobile/flow-docs-gen.md +430 -0
  48. package/prompts/mobile/flow-docs-sync.md +634 -0
  49. package/templates/backend/.clauderules.template +111 -0
  50. package/templates/backend/.cursorrules.template +102 -0
  51. package/templates/backend/.env.example.template +122 -0
  52. package/templates/backend/README.template.md +200 -0
  53. package/templates/backend/ai-instructions.template.md +354 -0
  54. package/templates/backend/copilot-instructions.template.md +160 -0
  55. package/templates/backend/docs/api.template.md +251 -0
  56. package/templates/backend/docs/architecture.template.md +612 -0
  57. package/templates/backend/docs/business-flows.template.md +109 -0
  58. package/templates/backend/docs/code-standards.template.md +828 -0
  59. package/templates/backend/docs/contributing.template.md +163 -0
  60. package/templates/backend/docs/data-model.template.md +416 -0
  61. package/templates/backend/docs/operations.template.md +591 -0
  62. package/templates/backend/docs/testing.template.md +762 -0
  63. package/templates/backend/project-brief.template.md +176 -0
  64. package/templates/backend/specs/configuration.template.md +133 -0
  65. package/templates/backend/specs/security.template.md +422 -0
  66. package/templates/frontend/README.template.md +121 -0
  67. package/templates/frontend/ai-instructions.template.md +368 -0
  68. package/templates/frontend/docs/api-integration.template.md +390 -0
  69. package/templates/frontend/docs/components.template.md +567 -0
  70. package/templates/frontend/docs/error-handling.template.md +385 -0
  71. package/templates/frontend/docs/operations.template.md +123 -0
  72. package/templates/frontend/docs/performance.template.md +140 -0
  73. package/templates/frontend/docs/pwa.template.md +135 -0
  74. package/templates/frontend/docs/state-management.template.md +394 -0
  75. package/templates/frontend/docs/styling.template.md +779 -0
  76. package/templates/frontend/docs/testing.template.md +736 -0
  77. package/templates/frontend/project-brief.template.md +55 -0
  78. package/templates/frontend/specs/accessibility.template.md +111 -0
  79. package/templates/frontend/specs/configuration.template.md +520 -0
  80. package/templates/frontend/specs/security.template.md +197 -0
  81. package/templates/fullstack/README.template.md +282 -0
  82. package/templates/fullstack/ai-instructions.template.md +487 -0
  83. package/templates/fullstack/project-brief.template.md +197 -0
  84. package/templates/fullstack/specs/configuration.template.md +380 -0
  85. package/templates/mobile/AGENT.template.md +251 -0
  86. package/templates/mobile/README.template.md +195 -0
  87. package/templates/mobile/ai-instructions.template.md +221 -0
  88. package/templates/mobile/docs/app-store.template.md +163 -0
  89. package/templates/mobile/docs/architecture.template.md +100 -0
  90. package/templates/mobile/docs/native-features.template.md +137 -0
  91. package/templates/mobile/docs/navigation.template.md +81 -0
  92. package/templates/mobile/docs/offline-strategy.template.md +90 -0
  93. package/templates/mobile/docs/permissions.template.md +70 -0
  94. package/templates/mobile/docs/state-management.template.md +116 -0
  95. package/templates/mobile/docs/testing.template.md +146 -0
  96. package/templates/mobile/project-brief.template.md +97 -0
  97. package/templates/mobile/specs/build-configuration.template.md +116 -0
  98. package/templates/mobile/specs/deployment.template.md +114 -0
  99. package/templates/shared/AGENT.template.md +252 -0
@@ -0,0 +1,197 @@
1
+ # Security Specification
2
+
3
+ > Frontend security requirements and best practices for {{PROJECT_NAME}}
4
+
5
+ ---
6
+
7
+ ## 🎯 Security Strategy
8
+
9
+ **CSP:** {{CSP_ENABLED}}
10
+ **XSS Prevention:** {{XSS_PREVENTION}}
11
+ **Secure Storage:** {{SECURE_STORAGE}}
12
+ **HTTPS:** {{HTTPS_ENFORCEMENT}}
13
+ **Dependency Scanning:** {{DEPENDENCY_SCANNING}}
14
+
15
+ ---
16
+
17
+ ## 🛡️ Content Security Policy (CSP)
18
+
19
+ ### CSP Configuration
20
+
21
+ ```html
22
+ <!-- index.html -->
23
+ <meta http-equiv="Content-Security-Policy" content="
24
+ default-src 'self';
25
+ script-src 'self' 'unsafe-inline' https://cdn.example.com;
26
+ style-src 'self' 'unsafe-inline' https://fonts.googleapis.com;
27
+ img-src 'self' data: https:;
28
+ font-src 'self' https://fonts.gstatic.com;
29
+ connect-src 'self' https://api.example.com;
30
+ frame-ancestors 'none';
31
+ ">
32
+ ```
33
+
34
+ ### Strict CSP (Recommended)
35
+
36
+ ```html
37
+ <meta http-equiv="Content-Security-Policy" content="
38
+ default-src 'self';
39
+ script-src 'self';
40
+ style-src 'self';
41
+ img-src 'self' data: https:;
42
+ font-src 'self';
43
+ connect-src 'self' https://api.example.com;
44
+ base-uri 'self';
45
+ form-action 'self';
46
+ frame-ancestors 'none';
47
+ upgrade-insecure-requests;
48
+ ">
49
+ ```
50
+
51
+ ---
52
+
53
+ ## 🔒 XSS Prevention
54
+
55
+ ### Input Sanitization
56
+
57
+ ```typescript
58
+ // utils/sanitize.ts
59
+ import DOMPurify from 'dompurify';
60
+
61
+ export function sanitizeHtml(html: string): string {
62
+ return DOMPurify.sanitize(html, {
63
+ ALLOWED_TAGS: ['b', 'i', 'em', 'strong', 'a', 'p', 'br'],
64
+ ALLOWED_ATTR: ['href'],
65
+ });
66
+ }
67
+ ```
68
+
69
+ ### Safe HTML Rendering
70
+
71
+ ```typescript
72
+ // React
73
+ <div dangerouslySetInnerHTML={{ __html: sanitizeHtml(userContent) }} />
74
+
75
+ // Vue
76
+ <div v-html="sanitizeHtml(userContent)" />
77
+ ```
78
+
79
+ ### URL Validation
80
+
81
+ ```typescript
82
+ // utils/validateUrl.ts
83
+ export function isValidUrl(url: string): boolean {
84
+ try {
85
+ const parsed = new URL(url);
86
+ return ['http:', 'https:'].includes(parsed.protocol);
87
+ } catch {
88
+ return false;
89
+ }
90
+ }
91
+ ```
92
+
93
+ ---
94
+
95
+ ## 🔐 Secure Storage
96
+
97
+ ### Token Storage Strategy
98
+
99
+ **Option 1: httpOnly Cookies (Most Secure)**
100
+
101
+ ```typescript
102
+ // Backend sets httpOnly cookie
103
+ // Frontend doesn't access token directly
104
+ // Token sent automatically with requests
105
+ ```
106
+
107
+ **Option 2: Memory Storage**
108
+
109
+ ```typescript
110
+ // utils/auth.ts
111
+ let authToken: string | null = null;
112
+
113
+ export function setToken(token: string): void {
114
+ authToken = token; // Stored in memory only
115
+ }
116
+
117
+ export function getToken(): string | null {
118
+ return authToken;
119
+ }
120
+
121
+ export function clearToken(): void {
122
+ authToken = null;
123
+ }
124
+ ```
125
+
126
+ **Option 3: localStorage (Less Secure)**
127
+
128
+ ```typescript
129
+ // Only for non-sensitive data
130
+ // Never store sensitive tokens in localStorage
131
+ const PREFERENCE_KEY = 'user_preferences';
132
+
133
+ export function savePreferences(prefs: UserPreferences): void {
134
+ localStorage.setItem(PREFERENCE_KEY, JSON.stringify(prefs));
135
+ }
136
+ ```
137
+
138
+ ---
139
+
140
+ ## 🔒 HTTPS Enforcement
141
+
142
+ ### Redirect HTTP to HTTPS
143
+
144
+ ```typescript
145
+ // Redirect in production
146
+ if (location.protocol === 'http:' && location.hostname !== 'localhost') {
147
+ location.replace(`https:${location.href.substring(location.protocol.length)}`);
148
+ }
149
+ ```
150
+
151
+ ### HSTS Headers (Server-side)
152
+
153
+ ```
154
+ Strict-Transport-Security: max-age=31536000; includeSubDomains
155
+ ```
156
+
157
+ ---
158
+
159
+ ## 🔍 Dependency Security
160
+
161
+ ### Automated Scanning
162
+
163
+ ```bash
164
+ # npm audit
165
+ npm audit
166
+
167
+ # Fix vulnerabilities
168
+ npm audit fix
169
+
170
+ # Snyk
171
+ npx snyk test
172
+
173
+ # Dependabot (GitHub)
174
+ # Automatically creates PRs for security updates
175
+ ```
176
+
177
+ ### Security Checklist
178
+
179
+ - [ ] Run `npm audit` regularly
180
+ - [ ] Keep dependencies updated
181
+ - [ ] Review security advisories
182
+ - [ ] Use Dependabot or similar
183
+ - [ ] Remove unused dependencies
184
+
185
+ ---
186
+
187
+ ## 🔗 Related Documents
188
+
189
+ - [Configuration](configuration.md) - Environment security
190
+ - [Error Handling](../docs/error-handling.md) - Security error handling
191
+
192
+ ---
193
+
194
+ **Last Updated:** {{GENERATION_DATE}}
195
+
196
+ **Security Level:** {{SECURITY_LEVEL}}
197
+
@@ -0,0 +1,282 @@
1
+ # {{PROJECT_NAME}}
2
+
3
+ > {{PROJECT_DESCRIPTION}}
4
+
5
+ ---
6
+
7
+ ## 📋 Overview
8
+
9
+ {{PROBLEM_STATEMENT}}
10
+
11
+ **Target Users:** {{TARGET_USERS_SUMMARY}}
12
+
13
+ ---
14
+
15
+ ## ✨ Features
16
+
17
+ {{#EACH FEATURE}}
18
+
19
+ - **{{FEATURE_NAME}}**: {{FEATURE_DESCRIPTION}}
20
+ {{/EACH}}
21
+
22
+ ---
23
+
24
+ ## 🏗️ Tech Stack
25
+
26
+ ### Backend
27
+
28
+ - **Framework:** {{FRAMEWORK}} {{FRAMEWORK_VERSION}}
29
+ - **Language:** {{LANGUAGE}} {{LANGUAGE_VERSION}}
30
+ - **Database:** {{DATABASE}}
31
+ - **Authentication:** {{AUTH_METHOD}}
32
+
33
+ ### Frontend
34
+
35
+ - **UI Framework:** {{UI_FRAMEWORK}} {{UI_FRAMEWORK_VERSION}}
36
+ - **Build Tool:** {{BUILD_TOOL}}
37
+ - **Styling:** {{STYLING_APPROACH}}
38
+ - **State Management:** {{STATE_MANAGEMENT}}
39
+ - **Testing:** {{UNIT_TEST_FRAMEWORK}}, {{E2E_FRAMEWORK}}
40
+
41
+ ---
42
+
43
+ ## 🚀 Getting Started
44
+
45
+ ### Prerequisites
46
+
47
+ {{#EACH PREREQUISITE}}
48
+
49
+ - {{PREREQUISITE_NAME}} {{PREREQUISITE_VERSION}}
50
+ {{/EACH}}
51
+
52
+ ### Installation
53
+
54
+ ```bash
55
+ # Clone repository
56
+ git clone {{REPOSITORY_URL}}
57
+ cd {{PROJECT_DIR}}
58
+
59
+ # Install backend dependencies
60
+ cd backend
61
+ {{INSTALL_COMMAND}}
62
+
63
+ # Copy environment variables
64
+ cp .env.example .env
65
+
66
+ # Setup database
67
+ {{DB_SETUP_COMMAND}}
68
+
69
+ # Run migrations
70
+ {{MIGRATION_COMMAND}}
71
+
72
+ # Install frontend dependencies
73
+ cd ../frontend
74
+ {{PACKAGE_MANAGER}} install
75
+
76
+ # Copy frontend environment variables
77
+ cp .env.example .env
78
+ ```
79
+
80
+ ### Development
81
+
82
+ **Backend:**
83
+ ```bash
84
+ cd backend
85
+ {{DEV_COMMAND}}
86
+ ```
87
+
88
+ The backend API will be available at `{{DEV_URL}}`
89
+
90
+ **Frontend:**
91
+ ```bash
92
+ cd frontend
93
+ {{PACKAGE_MANAGER}} run dev
94
+ ```
95
+
96
+ The frontend application will be available at `{{FRONTEND_DEV_URL}}`
97
+
98
+ ---
99
+
100
+ ## 🧪 Testing
101
+
102
+ **Backend:**
103
+ ```bash
104
+ cd backend
105
+ # Run all tests
106
+ {{TEST_COMMAND}}
107
+
108
+ # Run with coverage
109
+ {{COVERAGE_COMMAND}}
110
+ ```
111
+
112
+ **Frontend:**
113
+ ```bash
114
+ cd frontend
115
+ # Run all tests
116
+ {{PACKAGE_MANAGER}} run test
117
+
118
+ # Run with coverage
119
+ {{PACKAGE_MANAGER}} run test:coverage
120
+
121
+ # Run E2E tests
122
+ {{PACKAGE_MANAGER}} run test:e2e
123
+ ```
124
+
125
+ ---
126
+
127
+ ## 📦 Building
128
+
129
+ **Backend:**
130
+ ```bash
131
+ cd backend
132
+ # Build for production
133
+ {{BUILD_COMMAND}}
134
+
135
+ # Start production server
136
+ {{PROD_COMMAND}}
137
+ ```
138
+
139
+ **Frontend:**
140
+ ```bash
141
+ cd frontend
142
+ # Build for production
143
+ {{PACKAGE_MANAGER}} run build
144
+
145
+ # Preview production build
146
+ {{PACKAGE_MANAGER}} run preview
147
+ ```
148
+
149
+ ---
150
+
151
+ ## 🔧 Available Scripts
152
+
153
+ **Backend:**
154
+ ```bash
155
+ {{#EACH SCRIPT}}
156
+ # {{SCRIPT_DESCRIPTION}}
157
+ {{SCRIPT_COMMAND}}
158
+
159
+ {{/EACH}}
160
+ ```
161
+
162
+ **Frontend:**
163
+ ```bash
164
+ - {{PACKAGE_MANAGER}} run dev - Start development server
165
+ - {{PACKAGE_MANAGER}} run build - Build for production
166
+ - {{PACKAGE_MANAGER}} run preview - Preview production build
167
+ - {{PACKAGE_MANAGER}} run test - Run tests
168
+ - {{PACKAGE_MANAGER}} run lint - Run linter
169
+ - {{PACKAGE_MANAGER}} run format - Format code
170
+ ```
171
+
172
+ ---
173
+
174
+ ## 📁 Project Structure
175
+
176
+ ```
177
+ {{PROJECT_STRUCTURE}}
178
+ ```
179
+
180
+ ---
181
+
182
+ ## 📚 Documentation
183
+
184
+ ### Backend Documentation
185
+
186
+ - [Architecture](docs/architecture.md) - System architecture and design patterns
187
+ - [Data Model](docs/data-model.md) - Database schema and relationships
188
+ - [Business Flows](docs/business-flows.md) - Main business processes and flowcharts
189
+ - [API Reference](docs/api.md) - Endpoints and conventions
190
+ - [Code Standards](docs/code-standards.md) - Coding conventions and quality rules
191
+ - [Testing](docs/testing.md) - Testing strategy and requirements
192
+ - [Operations](docs/operations.md) - Deployment and operational procedures
193
+ - [Security](specs/security.md) - Security policies and compliance
194
+ - [Configuration](specs/configuration.md) - Environment configuration
195
+ - [Contributing](docs/contributing.md) - How to contribute
196
+
197
+ ### Frontend Documentation
198
+
199
+ - [Components](docs/components.md) - Component architecture
200
+ - [State Management](docs/state-management.md) - State patterns
201
+ - [Styling](docs/styling.md) - Styling guidelines
202
+ - [Testing](docs/testing.md) - Testing strategy
203
+ - [Accessibility](specs/accessibility.md) - A11y requirements
204
+
205
+ ### For AI Assistants
206
+
207
+ - [AGENT.md](AGENT.md) - Universal AI configuration
208
+ - [AI Instructions](ai-instructions.md) - AI development rules and workflow
209
+
210
+ ---
211
+
212
+ ## 🔐 Environment Variables
213
+
214
+ See `.env.example` files in both `backend/` and `frontend/` directories for all required environment variables.
215
+
216
+ **Backend Critical Variables:**
217
+ {{#EACH CRITICAL_VAR}}
218
+
219
+ - `{{VAR_NAME}}` - {{VAR_DESCRIPTION}}
220
+ {{/EACH}}
221
+
222
+ **Frontend Critical Variables:**
223
+ {{#EACH FRONTEND_CRITICAL_VAR}}
224
+
225
+ - `{{VAR_NAME}}` - {{VAR_DESCRIPTION}}
226
+ {{/EACH}}
227
+
228
+ ---
229
+
230
+ ## 🚀 Deployment
231
+
232
+ See [docs/operations.md](docs/operations.md) for deployment procedures.
233
+
234
+ **Backend Platform:** {{DEPLOYMENT_PLATFORM}}
235
+
236
+ **Frontend Platform:** {{FRONTEND_DEPLOYMENT_PLATFORM}}
237
+
238
+ **Environments:**
239
+
240
+ - Development: Backend `{{DEV_URL}}` | Frontend `{{FRONTEND_DEV_URL}}`
241
+ - Staging: Backend `{{STAGING_URL}}` | Frontend `{{FRONTEND_STAGING_URL}}`
242
+ - Production: Backend `{{PRODUCTION_URL}}` | Frontend `{{FRONTEND_PRODUCTION_URL}}`
243
+
244
+ ---
245
+
246
+ ## 🤝 Contributing
247
+
248
+ See [docs/contributing.md](docs/contributing.md) for contribution guidelines.
249
+
250
+ 1. Fork the repository
251
+ 2. Create feature branch (`git checkout -b feature/amazing-feature`)
252
+ 3. Commit changes (`git commit -m 'feat: add amazing feature'`)
253
+ 4. Push to branch (`git push origin feature/amazing-feature`)
254
+ 5. Open Pull Request
255
+
256
+ ---
257
+
258
+ ## 📝 License
259
+
260
+ {{LICENSE}}
261
+
262
+ ---
263
+
264
+ ## 👥 Team
265
+
266
+ {{#EACH TEAM_MEMBER}}
267
+
268
+ - **{{MEMBER_NAME}}** - {{MEMBER_ROLE}}
269
+ {{/EACH}}
270
+
271
+ ---
272
+
273
+ ## 📞 Support
274
+
275
+ {{#IF SUPPORT_EMAIL}}- Email: {{SUPPORT_EMAIL}}{{/IF}}
276
+ {{#IF SUPPORT_SLACK}}- Slack: {{SUPPORT_SLACK}}{{/IF}}
277
+ {{#IF ISSUE_TRACKER}}- Issues: {{ISSUE_TRACKER}}{{/IF}}
278
+
279
+ ---
280
+
281
+ **Generated with** [AI Flow](https://github.com/victorvelazquez/ai-flow) 🚀
282
+