claude-autopm 2.8.1 → 2.8.2

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 (273) hide show
  1. package/README.md +116 -8
  2. package/bin/autopm.js +2 -0
  3. package/bin/commands/plugin.js +395 -0
  4. package/bin/commands/team.js +184 -10
  5. package/install/install.js +223 -4
  6. package/lib/plugins/PluginManager.js +1328 -0
  7. package/lib/plugins/PluginManager.old.js +400 -0
  8. package/package.json +4 -1
  9. package/scripts/publish-plugins.sh +166 -0
  10. package/autopm/.claude/agents/cloud/README.md +0 -55
  11. package/autopm/.claude/agents/cloud/aws-cloud-architect.md +0 -521
  12. package/autopm/.claude/agents/cloud/azure-cloud-architect.md +0 -436
  13. package/autopm/.claude/agents/cloud/gcp-cloud-architect.md +0 -385
  14. package/autopm/.claude/agents/cloud/gcp-cloud-functions-engineer.md +0 -306
  15. package/autopm/.claude/agents/cloud/gemini-api-expert.md +0 -880
  16. package/autopm/.claude/agents/cloud/kubernetes-orchestrator.md +0 -566
  17. package/autopm/.claude/agents/cloud/openai-python-expert.md +0 -1087
  18. package/autopm/.claude/agents/cloud/terraform-infrastructure-expert.md +0 -454
  19. package/autopm/.claude/agents/core/agent-manager.md +0 -296
  20. package/autopm/.claude/agents/core/code-analyzer.md +0 -131
  21. package/autopm/.claude/agents/core/file-analyzer.md +0 -162
  22. package/autopm/.claude/agents/core/test-runner.md +0 -200
  23. package/autopm/.claude/agents/data/airflow-orchestration-expert.md +0 -52
  24. package/autopm/.claude/agents/data/kedro-pipeline-expert.md +0 -50
  25. package/autopm/.claude/agents/data/langgraph-workflow-expert.md +0 -520
  26. package/autopm/.claude/agents/databases/README.md +0 -50
  27. package/autopm/.claude/agents/databases/bigquery-expert.md +0 -392
  28. package/autopm/.claude/agents/databases/cosmosdb-expert.md +0 -368
  29. package/autopm/.claude/agents/databases/mongodb-expert.md +0 -398
  30. package/autopm/.claude/agents/databases/postgresql-expert.md +0 -321
  31. package/autopm/.claude/agents/databases/redis-expert.md +0 -52
  32. package/autopm/.claude/agents/devops/README.md +0 -52
  33. package/autopm/.claude/agents/devops/azure-devops-specialist.md +0 -308
  34. package/autopm/.claude/agents/devops/docker-containerization-expert.md +0 -298
  35. package/autopm/.claude/agents/devops/github-operations-specialist.md +0 -335
  36. package/autopm/.claude/agents/devops/mcp-context-manager.md +0 -319
  37. package/autopm/.claude/agents/devops/observability-engineer.md +0 -574
  38. package/autopm/.claude/agents/devops/ssh-operations-expert.md +0 -1093
  39. package/autopm/.claude/agents/devops/traefik-proxy-expert.md +0 -444
  40. package/autopm/.claude/agents/frameworks/README.md +0 -64
  41. package/autopm/.claude/agents/frameworks/e2e-test-engineer.md +0 -360
  42. package/autopm/.claude/agents/frameworks/nats-messaging-expert.md +0 -254
  43. package/autopm/.claude/agents/frameworks/react-frontend-engineer.md +0 -217
  44. package/autopm/.claude/agents/frameworks/react-ui-expert.md +0 -226
  45. package/autopm/.claude/agents/frameworks/tailwindcss-expert.md +0 -770
  46. package/autopm/.claude/agents/frameworks/ux-design-expert.md +0 -244
  47. package/autopm/.claude/agents/integration/message-queue-engineer.md +0 -794
  48. package/autopm/.claude/agents/languages/README.md +0 -50
  49. package/autopm/.claude/agents/languages/bash-scripting-expert.md +0 -541
  50. package/autopm/.claude/agents/languages/javascript-frontend-engineer.md +0 -197
  51. package/autopm/.claude/agents/languages/nodejs-backend-engineer.md +0 -226
  52. package/autopm/.claude/agents/languages/python-backend-engineer.md +0 -214
  53. package/autopm/.claude/agents/languages/python-backend-expert.md +0 -289
  54. package/autopm/.claude/agents/testing/frontend-testing-engineer.md +0 -395
  55. package/autopm/.claude/commands/ai/langgraph-workflow.md +0 -65
  56. package/autopm/.claude/commands/ai/openai-chat.md +0 -65
  57. package/autopm/.claude/commands/azure/COMMANDS.md +0 -107
  58. package/autopm/.claude/commands/azure/COMMAND_MAPPING.md +0 -252
  59. package/autopm/.claude/commands/azure/INTEGRATION_FIX.md +0 -103
  60. package/autopm/.claude/commands/azure/README.md +0 -246
  61. package/autopm/.claude/commands/azure/active-work.md +0 -198
  62. package/autopm/.claude/commands/azure/aliases.md +0 -143
  63. package/autopm/.claude/commands/azure/blocked-items.md +0 -287
  64. package/autopm/.claude/commands/azure/clean.md +0 -93
  65. package/autopm/.claude/commands/azure/docs-query.md +0 -48
  66. package/autopm/.claude/commands/azure/feature-decompose.md +0 -380
  67. package/autopm/.claude/commands/azure/feature-list.md +0 -61
  68. package/autopm/.claude/commands/azure/feature-new.md +0 -115
  69. package/autopm/.claude/commands/azure/feature-show.md +0 -205
  70. package/autopm/.claude/commands/azure/feature-start.md +0 -130
  71. package/autopm/.claude/commands/azure/fix-integration-example.md +0 -93
  72. package/autopm/.claude/commands/azure/help.md +0 -150
  73. package/autopm/.claude/commands/azure/import-us.md +0 -269
  74. package/autopm/.claude/commands/azure/init.md +0 -211
  75. package/autopm/.claude/commands/azure/next-task.md +0 -262
  76. package/autopm/.claude/commands/azure/search.md +0 -160
  77. package/autopm/.claude/commands/azure/sprint-status.md +0 -235
  78. package/autopm/.claude/commands/azure/standup.md +0 -260
  79. package/autopm/.claude/commands/azure/sync-all.md +0 -99
  80. package/autopm/.claude/commands/azure/task-analyze.md +0 -186
  81. package/autopm/.claude/commands/azure/task-close.md +0 -329
  82. package/autopm/.claude/commands/azure/task-edit.md +0 -145
  83. package/autopm/.claude/commands/azure/task-list.md +0 -263
  84. package/autopm/.claude/commands/azure/task-new.md +0 -84
  85. package/autopm/.claude/commands/azure/task-reopen.md +0 -79
  86. package/autopm/.claude/commands/azure/task-show.md +0 -126
  87. package/autopm/.claude/commands/azure/task-start.md +0 -301
  88. package/autopm/.claude/commands/azure/task-status.md +0 -65
  89. package/autopm/.claude/commands/azure/task-sync.md +0 -67
  90. package/autopm/.claude/commands/azure/us-edit.md +0 -164
  91. package/autopm/.claude/commands/azure/us-list.md +0 -202
  92. package/autopm/.claude/commands/azure/us-new.md +0 -265
  93. package/autopm/.claude/commands/azure/us-parse.md +0 -253
  94. package/autopm/.claude/commands/azure/us-show.md +0 -188
  95. package/autopm/.claude/commands/azure/us-status.md +0 -320
  96. package/autopm/.claude/commands/azure/validate.md +0 -86
  97. package/autopm/.claude/commands/azure/work-item-sync.md +0 -47
  98. package/autopm/.claude/commands/cloud/infra-deploy.md +0 -38
  99. package/autopm/.claude/commands/github/workflow-create.md +0 -42
  100. package/autopm/.claude/commands/infrastructure/ssh-security.md +0 -65
  101. package/autopm/.claude/commands/infrastructure/traefik-setup.md +0 -65
  102. package/autopm/.claude/commands/kubernetes/deploy.md +0 -37
  103. package/autopm/.claude/commands/playwright/test-scaffold.md +0 -38
  104. package/autopm/.claude/commands/pm/blocked.md +0 -28
  105. package/autopm/.claude/commands/pm/clean.md +0 -119
  106. package/autopm/.claude/commands/pm/context-create.md +0 -136
  107. package/autopm/.claude/commands/pm/context-prime.md +0 -170
  108. package/autopm/.claude/commands/pm/context-update.md +0 -292
  109. package/autopm/.claude/commands/pm/context.md +0 -28
  110. package/autopm/.claude/commands/pm/epic-close.md +0 -86
  111. package/autopm/.claude/commands/pm/epic-decompose.md +0 -370
  112. package/autopm/.claude/commands/pm/epic-edit.md +0 -83
  113. package/autopm/.claude/commands/pm/epic-list.md +0 -30
  114. package/autopm/.claude/commands/pm/epic-merge.md +0 -222
  115. package/autopm/.claude/commands/pm/epic-oneshot.md +0 -119
  116. package/autopm/.claude/commands/pm/epic-refresh.md +0 -119
  117. package/autopm/.claude/commands/pm/epic-show.md +0 -28
  118. package/autopm/.claude/commands/pm/epic-split.md +0 -120
  119. package/autopm/.claude/commands/pm/epic-start.md +0 -195
  120. package/autopm/.claude/commands/pm/epic-status.md +0 -28
  121. package/autopm/.claude/commands/pm/epic-sync-modular.md +0 -338
  122. package/autopm/.claude/commands/pm/epic-sync-original.md +0 -473
  123. package/autopm/.claude/commands/pm/epic-sync.md +0 -486
  124. package/autopm/.claude/commands/pm/help.md +0 -28
  125. package/autopm/.claude/commands/pm/import.md +0 -115
  126. package/autopm/.claude/commands/pm/in-progress.md +0 -28
  127. package/autopm/.claude/commands/pm/init.md +0 -28
  128. package/autopm/.claude/commands/pm/issue-analyze.md +0 -202
  129. package/autopm/.claude/commands/pm/issue-close.md +0 -119
  130. package/autopm/.claude/commands/pm/issue-edit.md +0 -93
  131. package/autopm/.claude/commands/pm/issue-reopen.md +0 -87
  132. package/autopm/.claude/commands/pm/issue-show.md +0 -41
  133. package/autopm/.claude/commands/pm/issue-start.md +0 -234
  134. package/autopm/.claude/commands/pm/issue-status.md +0 -95
  135. package/autopm/.claude/commands/pm/issue-sync.md +0 -411
  136. package/autopm/.claude/commands/pm/next.md +0 -28
  137. package/autopm/.claude/commands/pm/prd-edit.md +0 -82
  138. package/autopm/.claude/commands/pm/prd-list.md +0 -28
  139. package/autopm/.claude/commands/pm/prd-new.md +0 -55
  140. package/autopm/.claude/commands/pm/prd-parse.md +0 -42
  141. package/autopm/.claude/commands/pm/prd-status.md +0 -28
  142. package/autopm/.claude/commands/pm/search.md +0 -28
  143. package/autopm/.claude/commands/pm/standup.md +0 -28
  144. package/autopm/.claude/commands/pm/status.md +0 -28
  145. package/autopm/.claude/commands/pm/sync.md +0 -99
  146. package/autopm/.claude/commands/pm/test-reference-update.md +0 -151
  147. package/autopm/.claude/commands/pm/validate.md +0 -28
  148. package/autopm/.claude/commands/pm/what-next.md +0 -28
  149. package/autopm/.claude/commands/python/api-scaffold.md +0 -50
  150. package/autopm/.claude/commands/python/docs-query.md +0 -48
  151. package/autopm/.claude/commands/react/app-scaffold.md +0 -50
  152. package/autopm/.claude/commands/testing/prime.md +0 -314
  153. package/autopm/.claude/commands/testing/run.md +0 -125
  154. package/autopm/.claude/commands/ui/bootstrap-scaffold.md +0 -65
  155. package/autopm/.claude/commands/ui/tailwind-system.md +0 -64
  156. package/autopm/.claude/rules/ai-integration-patterns.md +0 -219
  157. package/autopm/.claude/rules/ci-cd-kubernetes-strategy.md +0 -25
  158. package/autopm/.claude/rules/database-management-strategy.md +0 -17
  159. package/autopm/.claude/rules/database-pipeline.md +0 -94
  160. package/autopm/.claude/rules/devops-troubleshooting-playbook.md +0 -450
  161. package/autopm/.claude/rules/docker-first-development.md +0 -404
  162. package/autopm/.claude/rules/infrastructure-pipeline.md +0 -128
  163. package/autopm/.claude/rules/performance-guidelines.md +0 -403
  164. package/autopm/.claude/rules/ui-development-standards.md +0 -281
  165. package/autopm/.claude/rules/ui-framework-rules.md +0 -151
  166. package/autopm/.claude/rules/ux-design-rules.md +0 -209
  167. package/autopm/.claude/rules/visual-testing.md +0 -223
  168. package/autopm/.claude/scripts/azure/README.md +0 -192
  169. package/autopm/.claude/scripts/azure/active-work.js +0 -524
  170. package/autopm/.claude/scripts/azure/active-work.sh +0 -20
  171. package/autopm/.claude/scripts/azure/blocked.js +0 -520
  172. package/autopm/.claude/scripts/azure/blocked.sh +0 -20
  173. package/autopm/.claude/scripts/azure/daily.js +0 -533
  174. package/autopm/.claude/scripts/azure/daily.sh +0 -20
  175. package/autopm/.claude/scripts/azure/dashboard.js +0 -970
  176. package/autopm/.claude/scripts/azure/dashboard.sh +0 -20
  177. package/autopm/.claude/scripts/azure/feature-list.js +0 -254
  178. package/autopm/.claude/scripts/azure/feature-list.sh +0 -20
  179. package/autopm/.claude/scripts/azure/feature-show.js +0 -7
  180. package/autopm/.claude/scripts/azure/feature-show.sh +0 -20
  181. package/autopm/.claude/scripts/azure/feature-status.js +0 -604
  182. package/autopm/.claude/scripts/azure/feature-status.sh +0 -20
  183. package/autopm/.claude/scripts/azure/help.js +0 -342
  184. package/autopm/.claude/scripts/azure/help.sh +0 -20
  185. package/autopm/.claude/scripts/azure/next-task.js +0 -508
  186. package/autopm/.claude/scripts/azure/next-task.sh +0 -20
  187. package/autopm/.claude/scripts/azure/search.js +0 -469
  188. package/autopm/.claude/scripts/azure/search.sh +0 -20
  189. package/autopm/.claude/scripts/azure/setup.js +0 -745
  190. package/autopm/.claude/scripts/azure/setup.sh +0 -20
  191. package/autopm/.claude/scripts/azure/sprint-report.js +0 -1012
  192. package/autopm/.claude/scripts/azure/sprint-report.sh +0 -20
  193. package/autopm/.claude/scripts/azure/sync.js +0 -563
  194. package/autopm/.claude/scripts/azure/sync.sh +0 -20
  195. package/autopm/.claude/scripts/azure/us-list.js +0 -210
  196. package/autopm/.claude/scripts/azure/us-list.sh +0 -20
  197. package/autopm/.claude/scripts/azure/us-status.js +0 -238
  198. package/autopm/.claude/scripts/azure/us-status.sh +0 -20
  199. package/autopm/.claude/scripts/azure/validate.js +0 -626
  200. package/autopm/.claude/scripts/azure/validate.sh +0 -20
  201. package/autopm/.claude/scripts/azure/wrapper-template.sh +0 -20
  202. package/autopm/.claude/scripts/github/dependency-tracker.js +0 -554
  203. package/autopm/.claude/scripts/github/dependency-validator.js +0 -545
  204. package/autopm/.claude/scripts/github/dependency-visualizer.js +0 -477
  205. package/autopm/.claude/scripts/pm/analytics.js +0 -425
  206. package/autopm/.claude/scripts/pm/blocked.js +0 -164
  207. package/autopm/.claude/scripts/pm/blocked.sh +0 -78
  208. package/autopm/.claude/scripts/pm/clean.js +0 -464
  209. package/autopm/.claude/scripts/pm/context-create.js +0 -216
  210. package/autopm/.claude/scripts/pm/context-prime.js +0 -335
  211. package/autopm/.claude/scripts/pm/context-update.js +0 -344
  212. package/autopm/.claude/scripts/pm/context.js +0 -338
  213. package/autopm/.claude/scripts/pm/epic-close.js +0 -347
  214. package/autopm/.claude/scripts/pm/epic-edit.js +0 -382
  215. package/autopm/.claude/scripts/pm/epic-list.js +0 -273
  216. package/autopm/.claude/scripts/pm/epic-list.sh +0 -109
  217. package/autopm/.claude/scripts/pm/epic-show.js +0 -291
  218. package/autopm/.claude/scripts/pm/epic-show.sh +0 -105
  219. package/autopm/.claude/scripts/pm/epic-split.js +0 -522
  220. package/autopm/.claude/scripts/pm/epic-start/epic-start.js +0 -183
  221. package/autopm/.claude/scripts/pm/epic-start/epic-start.sh +0 -94
  222. package/autopm/.claude/scripts/pm/epic-status.js +0 -291
  223. package/autopm/.claude/scripts/pm/epic-status.sh +0 -104
  224. package/autopm/.claude/scripts/pm/epic-sync/README.md +0 -208
  225. package/autopm/.claude/scripts/pm/epic-sync/create-epic-issue.sh +0 -77
  226. package/autopm/.claude/scripts/pm/epic-sync/create-task-issues.sh +0 -86
  227. package/autopm/.claude/scripts/pm/epic-sync/update-epic-file.sh +0 -79
  228. package/autopm/.claude/scripts/pm/epic-sync/update-references.sh +0 -89
  229. package/autopm/.claude/scripts/pm/epic-sync.sh +0 -137
  230. package/autopm/.claude/scripts/pm/help.js +0 -92
  231. package/autopm/.claude/scripts/pm/help.sh +0 -90
  232. package/autopm/.claude/scripts/pm/in-progress.js +0 -178
  233. package/autopm/.claude/scripts/pm/in-progress.sh +0 -93
  234. package/autopm/.claude/scripts/pm/init.js +0 -321
  235. package/autopm/.claude/scripts/pm/init.sh +0 -178
  236. package/autopm/.claude/scripts/pm/issue-close.js +0 -232
  237. package/autopm/.claude/scripts/pm/issue-edit.js +0 -310
  238. package/autopm/.claude/scripts/pm/issue-show.js +0 -272
  239. package/autopm/.claude/scripts/pm/issue-start.js +0 -181
  240. package/autopm/.claude/scripts/pm/issue-sync/format-comment.sh +0 -468
  241. package/autopm/.claude/scripts/pm/issue-sync/gather-updates.sh +0 -460
  242. package/autopm/.claude/scripts/pm/issue-sync/post-comment.sh +0 -330
  243. package/autopm/.claude/scripts/pm/issue-sync/preflight-validation.sh +0 -348
  244. package/autopm/.claude/scripts/pm/issue-sync/update-frontmatter.sh +0 -387
  245. package/autopm/.claude/scripts/pm/lib/README.md +0 -85
  246. package/autopm/.claude/scripts/pm/lib/epic-discovery.js +0 -119
  247. package/autopm/.claude/scripts/pm/lib/logger.js +0 -78
  248. package/autopm/.claude/scripts/pm/next.js +0 -189
  249. package/autopm/.claude/scripts/pm/next.sh +0 -72
  250. package/autopm/.claude/scripts/pm/optimize.js +0 -407
  251. package/autopm/.claude/scripts/pm/pr-create.js +0 -337
  252. package/autopm/.claude/scripts/pm/pr-list.js +0 -257
  253. package/autopm/.claude/scripts/pm/prd-list.js +0 -242
  254. package/autopm/.claude/scripts/pm/prd-list.sh +0 -103
  255. package/autopm/.claude/scripts/pm/prd-new.js +0 -684
  256. package/autopm/.claude/scripts/pm/prd-parse.js +0 -547
  257. package/autopm/.claude/scripts/pm/prd-status.js +0 -152
  258. package/autopm/.claude/scripts/pm/prd-status.sh +0 -63
  259. package/autopm/.claude/scripts/pm/release.js +0 -460
  260. package/autopm/.claude/scripts/pm/search.js +0 -192
  261. package/autopm/.claude/scripts/pm/search.sh +0 -89
  262. package/autopm/.claude/scripts/pm/standup.js +0 -362
  263. package/autopm/.claude/scripts/pm/standup.sh +0 -95
  264. package/autopm/.claude/scripts/pm/status.js +0 -148
  265. package/autopm/.claude/scripts/pm/status.sh +0 -59
  266. package/autopm/.claude/scripts/pm/sync-batch.js +0 -337
  267. package/autopm/.claude/scripts/pm/sync.js +0 -343
  268. package/autopm/.claude/scripts/pm/template-list.js +0 -141
  269. package/autopm/.claude/scripts/pm/template-new.js +0 -366
  270. package/autopm/.claude/scripts/pm/validate.js +0 -274
  271. package/autopm/.claude/scripts/pm/validate.sh +0 -106
  272. package/autopm/.claude/scripts/pm/what-next.js +0 -660
  273. package/bin/node/azure-feature-show.js +0 -7
@@ -1,403 +0,0 @@
1
- # ⚡ Performance Guidelines & Optimization
2
-
3
- > **Performance is a feature. Slow is broken.**
4
-
5
- ## Performance Targets
6
-
7
- ### 🌐 Web Performance Metrics
8
-
9
- #### Core Web Vitals
10
-
11
- - **LCP (Largest Contentful Paint)**: < 2.5s
12
- - **FID (First Input Delay)**: < 100ms
13
- - **CLS (Cumulative Layout Shift)**: < 0.1
14
- - **FCP (First Contentful Paint)**: < 1.5s
15
- - **TTI (Time to Interactive)**: < 5s
16
- - **TBT (Total Blocking Time)**: < 300ms
17
-
18
- #### Page Load Targets
19
-
20
- - **3G Network**: < 3 seconds
21
- - **4G Network**: < 1.5 seconds
22
- - **Broadband**: < 1 second
23
- - **Repeat Visit**: < 500ms (with cache)
24
-
25
- ### 🔧 API Performance Targets
26
-
27
- | Operation Type | Target | Maximum |
28
- |---------------|--------|----------|
29
- | Simple Query | < 50ms | 100ms |
30
- | Complex Query | < 200ms | 500ms |
31
- | Search | < 300ms | 1s |
32
- | File Upload | < 1s/MB | 2s/MB |
33
- | Batch Operation | < 5s | 10s |
34
- | Real-time Updates | < 100ms | 200ms |
35
-
36
- ### 🗄️ Database Performance
37
-
38
- | Query Type | Target | Action if Exceeded |
39
- |-----------|--------|--------------------|
40
- | Indexed SELECT | < 10ms | Add index |
41
- | Complex JOIN | < 50ms | Optimize query |
42
- | Full Table Scan | < 100ms | Add index/partition |
43
- | Write Operation | < 20ms | Check locks |
44
- | Transaction | < 100ms | Break down |
45
-
46
- ## Frontend Performance Optimization
47
-
48
- ### 📦 Bundle Size Budgets
49
-
50
- ```javascript
51
- // Maximum bundle sizes
52
- const budgets = {
53
- javascript: {
54
- initial: 200, // KB (gzipped)
55
- lazy: 300, // KB (gzipped)
56
- },
57
- css: {
58
- initial: 50, // KB (gzipped)
59
- lazy: 100, // KB (gzipped)
60
- },
61
- images: {
62
- hero: 200, // KB
63
- thumbnail: 20, // KB
64
- icon: 5, // KB
65
- },
66
- total: {
67
- initial: 500, // KB (all assets)
68
- full: 2000, // KB (entire app)
69
- }
70
- };
71
- ```
72
-
73
- ### 🎯 Optimization Checklist
74
-
75
- #### Code Optimization
76
-
77
- - [ ] Code splitting implemented
78
- - [ ] Lazy loading for routes
79
- - [ ] Tree shaking enabled
80
- - [ ] Dead code eliminated
81
- - [ ] Minification enabled
82
- - [ ] Compression (gzip/brotli)
83
- - [ ] Source maps in production
84
-
85
- #### Asset Optimization
86
-
87
- - [ ] Images optimized (WebP with fallback)
88
- - [ ] Responsive images (srcset)
89
- - [ ] Lazy loading images
90
- - [ ] SVG optimization
91
- - [ ] Font subsetting
92
- - [ ] Critical CSS inlined
93
- - [ ] Unused CSS removed
94
-
95
- #### Caching Strategy
96
-
97
- - [ ] Service Worker implemented
98
- - [ ] Cache headers configured
99
- - [ ] CDN for static assets
100
- - [ ] Browser cache utilized
101
- - [ ] API response caching
102
- - [ ] Database query caching
103
-
104
- #### Runtime Performance
105
-
106
- - [ ] Virtual scrolling for long lists
107
- - [ ] Debounced search inputs
108
- - [ ] Throttled scroll handlers
109
- - [ ] Web Workers for heavy computation
110
- - [ ] RequestAnimationFrame for animations
111
- - [ ] Avoid layout thrashing
112
-
113
- ### 📊 Performance Monitoring
114
-
115
- ```javascript
116
- // Performance monitoring setup
117
- const perfObserver = new PerformanceObserver((list) => {
118
- for (const entry of list.getEntries()) {
119
- // Log to analytics
120
- analytics.track('performance', {
121
- metric: entry.name,
122
- value: entry.value,
123
- page: window.location.pathname
124
- });
125
- }
126
- });
127
-
128
- // Observe all performance metrics
129
- perfObserver.observe({
130
- entryTypes: ['navigation', 'resource', 'paint', 'measure']
131
- });
132
- ```
133
-
134
- ## Backend Performance Optimization
135
-
136
- ### 🔄 API Optimization
137
-
138
- #### Response Time Optimization
139
-
140
- - [ ] Database connection pooling
141
- - [ ] Query optimization (EXPLAIN ANALYZE)
142
- - [ ] Proper indexing strategy
143
- - [ ] N+1 query prevention
144
- - [ ] Pagination implemented
145
- - [ ] Response compression
146
- - [ ] Field filtering (GraphQL/sparse fieldsets)
147
-
148
- #### Caching Layers
149
-
150
- ```python
151
- # Caching hierarchy
152
- 1. Browser Cache → 0ms
153
- 2. CDN Edge Cache → 10-50ms
154
- 3. Redis/Memcached → 1-5ms
155
- 4. Application Cache → 0.1ms
156
- 5. Database Cache → 5-10ms
157
- 6. Database Query → 10-100ms
158
- ```
159
-
160
- #### Concurrency & Scaling
161
-
162
- - [ ] Async/await for I/O operations
163
- - [ ] Worker threads for CPU-intensive tasks
164
- - [ ] Queue for background jobs
165
- - [ ] Rate limiting per endpoint
166
- - [ ] Circuit breakers for external services
167
- - [ ] Load balancing configured
168
- - [ ] Auto-scaling policies
169
-
170
- ### 📈 Database Optimization
171
-
172
- #### Query Optimization
173
-
174
- ```sql
175
- -- Before optimization
176
- SELECT * FROM orders o
177
- JOIN users u ON o.user_id = u.id
178
- WHERE u.country = 'US';
179
-
180
- -- After optimization
181
- SELECT o.id, o.total, u.name
182
- FROM orders o
183
- JOIN users u ON o.user_id = u.id
184
- WHERE u.country = 'US'
185
- AND o.created_at > NOW() - INTERVAL '30 days'
186
- LIMIT 100;
187
-
188
- -- With proper indexes
189
- CREATE INDEX idx_users_country ON users(country);
190
- CREATE INDEX idx_orders_user_created ON orders(user_id, created_at DESC);
191
- ```
192
-
193
- #### Index Strategy
194
-
195
- - [ ] Primary keys on all tables
196
- - [ ] Foreign key indexes
197
- - [ ] Composite indexes for common queries
198
- - [ ] Covering indexes for read-heavy queries
199
- - [ ] Partial indexes for filtered queries
200
- - [ ] Monitor index usage
201
-
202
- ## Performance Testing
203
-
204
- ### 🧪 Load Testing
205
-
206
- ```javascript
207
- // Performance test scenarios
208
- const scenarios = {
209
- baseline: {
210
- users: 100,
211
- duration: '5m',
212
- rampUp: '30s'
213
- },
214
- stress: {
215
- users: 1000,
216
- duration: '15m',
217
- rampUp: '2m'
218
- },
219
- spike: {
220
- users: 5000,
221
- duration: '10m',
222
- rampUp: '10s'
223
- },
224
- endurance: {
225
- users: 500,
226
- duration: '2h',
227
- rampUp: '5m'
228
- }
229
- };
230
- ```
231
-
232
- ### 📏 Performance Benchmarks
233
-
234
- | Metric | Excellent | Good | Needs Work | Unacceptable |
235
- |--------|-----------|------|------------|---------------|
236
- | Page Load | < 1s | < 2s | < 3s | > 3s |
237
- | API Response | < 100ms | < 300ms | < 1s | > 1s |
238
- | Database Query | < 10ms | < 50ms | < 200ms | > 200ms |
239
- | CPU Usage | < 40% | < 60% | < 80% | > 80% |
240
- | Memory Usage | < 50% | < 70% | < 85% | > 85% |
241
- | Error Rate | < 0.1% | < 1% | < 5% | > 5% |
242
-
243
- ## Performance Monitoring Tools
244
-
245
- ### Frontend Monitoring
246
-
247
- ```javascript
248
- // Real User Monitoring (RUM)
249
- - Google Analytics / GA4
250
- - New Relic Browser
251
- - Datadog RUM
252
- - Sentry Performance
253
-
254
- // Synthetic Monitoring
255
- - Lighthouse CI
256
- - WebPageTest
257
- - GTmetrix
258
- - SpeedCurve
259
- ```
260
-
261
- ### Backend Monitoring
262
-
263
- ```yaml
264
- # APM Tools
265
- - New Relic APM
266
- - Datadog APM
267
- - AppDynamics
268
- - Elastic APM
269
-
270
- # Custom Metrics
271
- - Prometheus + Grafana
272
- - StatsD
273
- - CloudWatch (AWS)
274
- - Application Insights (Azure)
275
- ```
276
-
277
- ## Performance Budget Enforcement
278
-
279
- ### CI/CD Integration
280
-
281
- ```yaml
282
- # Performance gates in pipeline
283
- performance-check:
284
- stage: test
285
- script:
286
- - lighthouse ci --budget=./budget.json
287
- - bundlesize --max-size 200KB
288
- - npm run test:performance
289
- rules:
290
- fail_on:
291
- - lcp > 2500
292
- - fid > 100
293
- - cls > 0.1
294
- - bundle_size > budget
295
- ```
296
-
297
- ### Performance Reviews
298
-
299
- #### Weekly Checks
300
-
301
- - [ ] Core Web Vitals trends
302
- - [ ] API response times
303
- - [ ] Error rates
304
- - [ ] Database slow query log
305
-
306
- #### Monthly Analysis
307
-
308
- - [ ] Performance regression analysis
309
- - [ ] User impact assessment
310
- - [ ] Infrastructure cost vs performance
311
- - [ ] Optimization opportunities
312
-
313
- ## Quick Performance Wins
314
-
315
- ### Immediate Improvements
316
-
317
- ```bash
318
- # Frontend
319
- ✅ Enable compression (gzip/brotli)
320
- ✅ Add Cache-Control headers
321
- ✅ Optimize images (WebP, lazy load)
322
- ✅ Minify CSS/JS
323
- ✅ Remove unused dependencies
324
-
325
- # Backend
326
- ✅ Add database indexes
327
- ✅ Enable query caching
328
- ✅ Implement pagination
329
- ✅ Use connection pooling
330
- ✅ Add Redis caching
331
-
332
- # Infrastructure
333
- ✅ Enable CDN
334
- ✅ Configure auto-scaling
335
- ✅ Optimize container size
336
- ✅ Use HTTP/2
337
- ✅ Enable keep-alive
338
- ```
339
-
340
- ## Performance Anti-Patterns
341
-
342
- ### Things to Avoid
343
-
344
- ```javascript
345
- // ❌ DON'T DO THIS
346
- - Synchronous API calls in loops
347
- - Unbounded queries (SELECT * without LIMIT)
348
- - Large DOM manipulations
349
- - Inline styles/scripts
350
- - Blocking resources in <head>
351
- - Memory leaks (event listeners, timers)
352
- - N+1 database queries
353
- - Premature optimization
354
-
355
- // ✅ DO THIS INSTEAD
356
- - Batch API calls
357
- - Paginate large datasets
358
- - Virtual DOM / React
359
- - External stylesheets
360
- - Async/defer scripts
361
- - Cleanup in useEffect/componentWillUnmount
362
- - Eager loading with includes
363
- - Measure first, optimize second
364
- ```
365
-
366
- ## Performance Culture
367
-
368
- ### Team Responsibilities
369
-
370
- #### Developers
371
-
372
- - Write performant code
373
- - Test performance locally
374
- - Monitor PR impact
375
-
376
- #### DevOps
377
-
378
- - Infrastructure optimization
379
- - Monitoring setup
380
- - Scaling policies
381
-
382
- #### Product
383
-
384
- - Define performance requirements
385
- - Prioritize performance work
386
- - Balance features vs speed
387
-
388
- ### Performance Reviews
389
-
390
- - Include performance in code reviews
391
- - Regular performance audits
392
- - Performance retrospectives
393
- - Celebrate performance wins
394
-
395
- ## Remember
396
-
397
- **Every millisecond counts.**
398
-
399
- - 100ms delay → 1% drop in sales
400
- - 1 second delay → 7% reduction in conversions
401
- - 3 seconds load → 53% mobile users leave
402
-
403
- **Performance is not a one-time task—it's a continuous process.**
@@ -1,281 +0,0 @@
1
- # UI Development Standards Rule
2
-
3
- > **PURPOSE**: Mandatory standards for consistent UI/UX development across projects.
4
-
5
- ## CRITICAL UI FRAMEWORK SELECTION
6
-
7
- ### 1. FRAMEWORK DECISION MATRIX
8
-
9
- **Bootstrap** - Use `react-ui-expert` (framework=bootstrap):
10
-
11
- - Rapid prototyping and MVP development
12
- - Component-heavy applications (dashboards, admin panels)
13
- - Team prefers pre-built components
14
- - Consistent enterprise-grade design needed
15
- - Less custom design requirements
16
-
17
- **TailwindCSS** - Use `tailwindcss-expert`:
18
-
19
- - Custom design systems and unique branding
20
- - High-performance applications (smaller bundle sizes)
21
- - Design flexibility and utility-first approach needed
22
- - Developer team comfortable with utility classes
23
- - Modern, cutting-edge UI requirements
24
-
25
- **Selection Criteria**:
26
-
27
- ```
28
- IF (rapid_development && pre_built_components) → Bootstrap
29
- IF (custom_design && performance_critical) → TailwindCSS
30
- IF (design_system_needed) → TailwindCSS
31
- IF (enterprise_consistency) → Bootstrap
32
- ```
33
-
34
- ### 2. RESPONSIVE DESIGN REQUIREMENTS
35
-
36
- **MANDATORY Responsive Breakpoints**:
37
-
38
- - Mobile First: Design for mobile, enhance for desktop
39
- - Breakpoints: 576px (sm), 768px (md), 992px (lg), 1200px (xl), 1400px (xxl)
40
- - Touch-friendly: Minimum 44px touch targets
41
- - Readable text: Minimum 16px font size on mobile
42
-
43
- **Testing Requirements**:
44
-
45
- - Test on actual devices, not just browser dev tools
46
- - Validate touch interactions on mobile devices
47
- - Ensure content reflows properly at all breakpoints
48
- - Test landscape and portrait orientations
49
-
50
- ### 3. ACCESSIBILITY STANDARDS (WCAG 2.1 AA)
51
-
52
- **MANDATORY Accessibility Features**:
53
-
54
- - Semantic HTML structure (headings h1-h6 hierarchy)
55
- - Alt text for all images and meaningful graphics
56
- - Proper form labels and error messages
57
- - Keyboard navigation support
58
- - Color contrast ratio ≥ 4.5:1 for normal text
59
- - Focus indicators visible and high contrast
60
-
61
- **Implementation Requirements**:
62
-
63
- ```html
64
- <!-- ALWAYS include proper ARIA labels -->
65
- <button aria-label="Close modal" aria-expanded="false">×</button>
66
-
67
- <!-- ALWAYS use semantic HTML -->
68
- <nav role="navigation">
69
- <ul>
70
- <li><a href="#section1">Section 1</a></li>
71
- </ul>
72
- </nav>
73
-
74
- <!-- ALWAYS provide alternative text -->
75
- <img src="chart.png" alt="Sales increased 25% in Q3 2024">
76
- ```
77
-
78
- ### 4. PERFORMANCE STANDARDS
79
-
80
- **Bootstrap Projects**:
81
-
82
- - Bundle size limit: < 300KB (CSS + JS gzipped)
83
- - Custom builds: Include only required components
84
- - Optimize images: WebP format with fallbacks
85
- - Minimize DOM depth: < 15 levels deep
86
-
87
- **TailwindCSS Projects**:
88
-
89
- - PurgeCSS enabled: Remove unused utilities
90
- - Bundle size limit: < 50KB (CSS gzipped)
91
- - JIT mode enabled for development
92
- - Production builds must be optimized
93
-
94
- **Performance Metrics** (REQUIRED):
95
-
96
- - First Contentful Paint (FCP) < 1.5s
97
- - Largest Contentful Paint (LCP) < 2.5s
98
- - Cumulative Layout Shift (CLS) < 0.1
99
- - Time to Interactive (TTI) < 3.5s
100
-
101
- ### 5. BROWSER COMPATIBILITY REQUIREMENTS
102
-
103
- **Supported Browsers** (MINIMUM):
104
-
105
- - Chrome/Edge: Last 2 versions
106
- - Firefox: Last 2 versions
107
- - Safari: Last 2 versions
108
- - Mobile Safari (iOS): Last 2 versions
109
- - Chrome Mobile (Android): Last 2 versions
110
-
111
- **Fallback Strategies**:
112
-
113
- - Progressive enhancement approach
114
- - Graceful degradation for unsupported features
115
- - Polyfills for critical missing features
116
- - Alternative layouts for older browsers
117
-
118
- ### 6. COMPONENT ARCHITECTURE STANDARDS
119
-
120
- **Bootstrap Components**:
121
-
122
- ```html
123
- <!-- ALWAYS use consistent class patterns -->
124
- <div class="card h-100 shadow-sm">
125
- <div class="card-header d-flex justify-content-between align-items-center">
126
- <h5 class="card-title mb-0">Title</h5>
127
- <button class="btn btn-sm btn-outline-secondary">Action</button>
128
- </div>
129
- <div class="card-body">
130
- <p class="card-text">Content</p>
131
- </div>
132
- </div>
133
- ```
134
-
135
- **TailwindCSS Components**:
136
-
137
- ```html
138
- <!-- ALWAYS extract component patterns -->
139
- <div class="bg-white rounded-lg shadow-md p-6 hover:shadow-lg transition-shadow">
140
- <div class="flex justify-between items-center mb-4">
141
- <h3 class="text-lg font-semibold text-gray-900">Title</h3>
142
- <button class="px-3 py-1 text-sm bg-blue-100 text-blue-700 rounded-full hover:bg-blue-200">
143
- Action
144
- </button>
145
- </div>
146
- <p class="text-gray-600">Content</p>
147
- </div>
148
- ```
149
-
150
- ### 7. FORM VALIDATION STANDARDS
151
-
152
- **Client-Side Validation** (MANDATORY):
153
-
154
- - Real-time validation feedback
155
- - Clear error messages
156
- - Visual error indicators
157
- - Success confirmation states
158
-
159
- **Implementation Pattern**:
160
-
161
- ```html
162
- <!-- Bootstrap form validation -->
163
- <form class="needs-validation" novalidate>
164
- <div class="mb-3">
165
- <label for="email" class="form-label">Email</label>
166
- <input type="email" class="form-control" id="email" required>
167
- <div class="invalid-feedback">Please provide a valid email.</div>
168
- <div class="valid-feedback">Looks good!</div>
169
- </div>
170
- </form>
171
-
172
- <!-- TailwindCSS form validation -->
173
- <form>
174
- <div class="mb-4">
175
- <label class="block text-sm font-medium text-gray-700 mb-2">Email</label>
176
- <input
177
- type="email"
178
- class="w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-blue-500"
179
- required
180
- >
181
- <p class="mt-1 text-sm text-red-600 hidden">Please provide a valid email.</p>
182
- </div>
183
- </form>
184
- ```
185
-
186
- ### 8. DARK MODE IMPLEMENTATION
187
-
188
- **TailwindCSS Dark Mode**:
189
-
190
- ```html
191
- <!-- ALWAYS support dark mode with TailwindCSS -->
192
- <div class="bg-white dark:bg-gray-800 text-gray-900 dark:text-gray-100">
193
- <h1 class="text-2xl font-bold text-gray-900 dark:text-white">Title</h1>
194
- <p class="text-gray-600 dark:text-gray-300">Content</p>
195
- </div>
196
- ```
197
-
198
- **Bootstrap Dark Mode**:
199
-
200
- ```html
201
- <!-- Use Bootstrap 5.3+ dark mode support -->
202
- <html data-bs-theme="dark">
203
- <div class="card">
204
- <div class="card-body">
205
- <h5 class="card-title">Dark Mode Card</h5>
206
- </div>
207
- </div>
208
- </html>
209
- ```
210
-
211
- ### 9. TESTING REQUIREMENTS
212
-
213
- **Visual Testing** (MANDATORY):
214
-
215
- - Screenshot testing across breakpoints
216
- - Cross-browser visual comparison
217
- - Accessibility audit with tools (axe, WAVE)
218
- - Color contrast validation
219
-
220
- **Functional Testing**:
221
-
222
- - Form submission and validation
223
- - Interactive component behavior
224
- - Navigation and routing
225
- - Mobile touch interactions
226
-
227
- **Performance Testing**:
228
-
229
- - Bundle size monitoring
230
- - Load time measurement
231
- - Core Web Vitals tracking
232
- - Lighthouse audit scores ≥ 90
233
-
234
- ### 10. CODE ORGANIZATION STANDARDS
235
-
236
- **File Structure**:
237
-
238
- ```
239
- src/
240
- ├── styles/
241
- │ ├── bootstrap/ # Bootstrap customizations
242
- │ │ ├── variables.scss # Custom variables
243
- │ │ └── custom.scss # Custom components
244
- │ └── tailwind/ # TailwindCSS customizations
245
- │ ├── config.js # Tailwind configuration
246
- │ └── components/ # Component patterns
247
- ├── components/ # Reusable UI components
248
- └── assets/ # Images, fonts, icons
249
- ```
250
-
251
- **Code Quality**:
252
-
253
- - Consistent indentation (2 spaces)
254
- - Meaningful class names and comments
255
- - Component reusability and modularity
256
- - Documentation for complex components
257
-
258
- ## VIOLATIONS AND ENFORCEMENT
259
-
260
- **CRITICAL VIOLATIONS** (Block deployment):
261
-
262
- - Missing responsive design implementation
263
- - Accessibility violations (WCAG 2.1 AA failures)
264
- - Bundle size exceeds limits
265
- - No fallback for unsupported browsers
266
-
267
- **MAJOR VIOLATIONS** (Require fixes):
268
-
269
- - Inconsistent design patterns
270
- - Missing form validation
271
- - No dark mode support (for TailwindCSS projects)
272
- - Performance metrics below thresholds
273
-
274
- **MINOR VIOLATIONS** (Address in next iteration):
275
-
276
- - Suboptimal component organization
277
- - Missing hover/focus states
278
- - Incomplete documentation
279
- - Non-semantic HTML usage
280
-
281
- These standards ensure consistent, accessible, and performant UI development across all projects.