appiq-solution 1.3.2 → 1.4.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 (297) hide show
  1. package/#Tools/APPIQ-METHOD/.bmad-config.json +13 -0
  2. package/#Tools/APPIQ-METHOD/.cursor/commands/analyze.md +27 -0
  3. package/#Tools/APPIQ-METHOD/.cursor/commands/appiq.md +27 -0
  4. package/#Tools/APPIQ-METHOD/.cursor/commands/help.md +27 -0
  5. package/#Tools/APPIQ-METHOD/.cursor/commands/story.md +27 -0
  6. package/#Tools/APPIQ-METHOD/CHANGELOG.md +119 -173
  7. package/#Tools/APPIQ-METHOD/DEVELOPMENT_GUIDE.md +855 -0
  8. package/#Tools/APPIQ-METHOD/NPM-README.md +138 -0
  9. package/#Tools/APPIQ-METHOD/README.md +73 -105
  10. package/#Tools/APPIQ-METHOD/SMART_WORKFLOW_GUIDE.md +401 -0
  11. package/#Tools/APPIQ-METHOD/activate-appiq.js +81 -0
  12. package/#Tools/APPIQ-METHOD/appiq-solution/README.md +226 -0
  13. package/#Tools/APPIQ-METHOD/bmad-core/agent-teams/team-flutter-mobile.yaml +114 -0
  14. package/#Tools/APPIQ-METHOD/bmad-core/agent-teams/team-fullstack.yaml +11 -1
  15. package/#Tools/APPIQ-METHOD/bmad-core/agents/analyst.md +7 -3
  16. package/#Tools/APPIQ-METHOD/bmad-core/agents/architect.md +6 -0
  17. package/#Tools/APPIQ-METHOD/bmad-core/agents/bmad-orchestrator.md +0 -84
  18. package/#Tools/APPIQ-METHOD/bmad-core/agents/bmad-smart-launcher.md +170 -0
  19. package/#Tools/APPIQ-METHOD/bmad-core/agents/dev.md +31 -12
  20. package/#Tools/APPIQ-METHOD/bmad-core/agents/pm.md +10 -4
  21. package/#Tools/APPIQ-METHOD/bmad-core/agents/qa.md +17 -0
  22. package/#Tools/APPIQ-METHOD/bmad-core/agents/sm.md +8 -3
  23. package/#Tools/APPIQ-METHOD/bmad-core/agents/ux-expert.md +8 -3
  24. package/#Tools/APPIQ-METHOD/bmad-core/bmad-core/user-guide.md +0 -0
  25. package/#Tools/APPIQ-METHOD/bmad-core/checklists/security-validation-checklist.md +332 -0
  26. package/#Tools/APPIQ-METHOD/bmad-core/data/backend-services-integration.md +686 -0
  27. package/#Tools/APPIQ-METHOD/bmad-core/data/shadcn-ui-integration.md +388 -0
  28. package/#Tools/APPIQ-METHOD/bmad-core/data/technical-preferences.md +147 -1
  29. package/#Tools/APPIQ-METHOD/bmad-core/enhanced-ide-development-workflow.md +43 -0
  30. package/#Tools/APPIQ-METHOD/bmad-core/tasks/create-flutter-story.md +197 -0
  31. package/#Tools/APPIQ-METHOD/bmad-core/tasks/intelligent-epic-creation.md +234 -0
  32. package/#Tools/APPIQ-METHOD/bmad-core/tasks/smart-project-analysis.md +289 -0
  33. package/#Tools/APPIQ-METHOD/bmad-core/templates/flutter-mobile-prd-tmpl.yaml +330 -0
  34. package/#Tools/APPIQ-METHOD/bmad-core/templates/flutter-story-tmpl.yaml +376 -0
  35. package/#Tools/APPIQ-METHOD/bmad-core/templates/flutter-ui-spec-tmpl.yaml +415 -0
  36. package/#Tools/APPIQ-METHOD/bmad-core/templates/fullstack-architecture-tmpl.yaml +12 -5
  37. package/#Tools/APPIQ-METHOD/bmad-core/user-guide.md +10 -9
  38. package/#Tools/APPIQ-METHOD/bmad-core/workflows/brownfield-fullstack.yaml +15 -1
  39. package/#Tools/APPIQ-METHOD/bmad-core/workflows/greenfield-fullstack.yaml +49 -5
  40. package/#Tools/APPIQ-METHOD/bmad-core/working-in-the-brownfield.md +56 -44
  41. package/#Tools/APPIQ-METHOD/commands/README.md +28 -0
  42. package/#Tools/APPIQ-METHOD/commands/analyze.md +27 -0
  43. package/#Tools/APPIQ-METHOD/commands/appiq.md +27 -0
  44. package/#Tools/APPIQ-METHOD/commands/help.md +27 -0
  45. package/#Tools/APPIQ-METHOD/commands/story.md +27 -0
  46. package/#Tools/APPIQ-METHOD/dist/agents/bmad-orchestrator.txt +0 -111
  47. package/#Tools/APPIQ-METHOD/dist/agents/pm.txt +2 -0
  48. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-2d-phaser-game-dev/teams/phaser-2d-nodejs-game-team.txt +0 -111
  49. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-2d-unity-game-dev/teams/unity-2d-game-team.txt +0 -111
  50. package/#Tools/APPIQ-METHOD/dist/teams/team-all.txt +2 -111
  51. package/#Tools/APPIQ-METHOD/dist/teams/team-fullstack.txt +2 -111
  52. package/#Tools/APPIQ-METHOD/dist/teams/team-ide-minimal.txt +0 -111
  53. package/#Tools/APPIQ-METHOD/dist/teams/team-no-ui.txt +2 -111
  54. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-phaser-game-dev/config.yaml +1 -1
  55. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-2d-unity-game-dev/config.yaml +1 -1
  56. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev/agent-teams/flutter-mobile-team.yaml +23 -0
  57. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev/agents/flutter-cubit-agent.md +133 -0
  58. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev/agents/flutter-data-agent.md +160 -0
  59. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev/agents/flutter-domain-agent.md +153 -0
  60. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev/agents/flutter-ui-agent.md +122 -0
  61. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev/agents/shared-components-agent.md +161 -0
  62. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev/checklists/flutter-story-dod-checklist.md +194 -0
  63. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev/config.yaml +41 -0
  64. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev/data/flutter-development-guidelines.md +551 -0
  65. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev/templates/flutter-mobile-architecture-tmpl.yaml +530 -0
  66. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev/workflows/flutter-ui-first-development.yaml +220 -0
  67. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-infrastructure-devops/config.yaml +1 -1
  68. package/#Tools/APPIQ-METHOD/install-appiq.sh +41 -0
  69. package/#Tools/APPIQ-METHOD/package-lock.json +631 -0
  70. package/#Tools/APPIQ-METHOD/package.json +20 -69
  71. package/#Tools/APPIQ-METHOD/tasks/todo.md +275 -0
  72. package/#Tools/APPIQ-METHOD/tools/appiq-installer.js +2622 -0
  73. package/#Tools/APPIQ-METHOD/tools/bmad-npx-wrapper.js +5 -7
  74. package/#Tools/APPIQ-METHOD/tools/cli.js +3 -3
  75. package/#Tools/APPIQ-METHOD/tools/epic-solution-installer.js +538 -0
  76. package/#Tools/APPIQ-METHOD/tools/flattener/main.js +570 -0
  77. package/#Tools/APPIQ-METHOD/tools/installer/bin/bmad.js +15 -14
  78. package/#Tools/APPIQ-METHOD/tools/installer/lib/installer.js +28 -2
  79. package/#Tools/APPIQ-METHOD/tools/installer/package-lock.json +906 -0
  80. package/#Tools/APPIQ-METHOD/tools/installer/package.json +1 -1
  81. package/#Tools/APPIQ-METHOD/tools/setup-ide-commands.js +345 -0
  82. package/#Tools/APPIQ-METHOD/tools/smart-installer.js +589 -0
  83. package/README.md +73 -105
  84. package/package.json +20 -69
  85. package/tools/appiq-installer.js +2622 -0
  86. package/tools/bmad-npx-wrapper.js +5 -7
  87. package/tools/cli.js +3 -3
  88. package/tools/epic-solution-installer.js +538 -0
  89. package/tools/flattener/main.js +570 -0
  90. package/tools/installer/bin/bmad.js +15 -14
  91. package/tools/installer/lib/installer.js +28 -2
  92. package/tools/installer/package-lock.json +89 -89
  93. package/tools/installer/package.json +1 -1
  94. package/tools/setup-ide-commands.js +345 -0
  95. package/tools/smart-installer.js +589 -0
  96. package/#Tools/APPIQ-METHOD/appiq_start.md +0 -232
  97. package/#Tools/APPIQ-METHOD/deployment/DEPLOYMENT_GUIDE.md +0 -426
  98. package/#Tools/APPIQ-METHOD/deployment/GITHUB_RELEASE_GUIDE.md +0 -326
  99. package/#Tools/APPIQ-METHOD/deployment/README.md +0 -331
  100. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agent-teams/team-all.yaml +0 -14
  101. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agent-teams/team-fullstack.yaml +0 -18
  102. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agent-teams/team-ide-minimal.yaml +0 -10
  103. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agent-teams/team-no-ui.yaml +0 -13
  104. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agents/analyst.md +0 -81
  105. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agents/architect.md +0 -84
  106. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agents/bmad-master.md +0 -108
  107. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agents/bmad-orchestrator.md +0 -234
  108. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agents/dev.md +0 -76
  109. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agents/pm.md +0 -79
  110. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agents/po.md +0 -76
  111. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agents/qa.md +0 -69
  112. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agents/sm.md +0 -62
  113. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/agents/ux-expert.md +0 -66
  114. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/checklists/architect-checklist.md +0 -443
  115. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/checklists/change-checklist.md +0 -182
  116. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/checklists/pm-checklist.md +0 -375
  117. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/checklists/po-master-checklist.md +0 -441
  118. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/checklists/story-dod-checklist.md +0 -101
  119. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/checklists/story-draft-checklist.md +0 -156
  120. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/data/bmad-kb.md +0 -803
  121. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/data/brainstorming-techniques.md +0 -36
  122. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/data/elicitation-methods.md +0 -134
  123. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/data/technical-preferences.md +0 -3
  124. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/advanced-elicitation.md +0 -117
  125. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/brownfield-create-epic.md +0 -160
  126. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/brownfield-create-story.md +0 -147
  127. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/correct-course.md +0 -70
  128. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/create-brownfield-story.md +0 -304
  129. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/create-deep-research-prompt.md +0 -289
  130. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/create-next-story.md +0 -112
  131. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/document-project.md +0 -341
  132. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/facilitate-brainstorming-session.md +0 -136
  133. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/generate-ai-frontend-prompt.md +0 -51
  134. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/index-docs.md +0 -179
  135. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/kb-mode-interaction.md +0 -75
  136. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/review-story.md +0 -145
  137. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/shard-doc.md +0 -187
  138. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/tasks/validate-next-story.md +0 -134
  139. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/templates/architecture-tmpl.yaml +0 -650
  140. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/templates/brainstorming-output-tmpl.yaml +0 -156
  141. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/templates/brownfield-architecture-tmpl.yaml +0 -476
  142. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/templates/brownfield-prd-tmpl.yaml +0 -280
  143. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/templates/competitor-analysis-tmpl.yaml +0 -293
  144. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/templates/front-end-architecture-tmpl.yaml +0 -206
  145. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/templates/front-end-spec-tmpl.yaml +0 -349
  146. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/templates/fullstack-architecture-tmpl.yaml +0 -805
  147. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/templates/market-research-tmpl.yaml +0 -252
  148. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/templates/prd-tmpl.yaml +0 -202
  149. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/templates/project-brief-tmpl.yaml +0 -221
  150. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/templates/story-tmpl.yaml +0 -137
  151. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/user-guide.md +0 -250
  152. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/workflows/brownfield-fullstack.yaml +0 -297
  153. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/workflows/brownfield-service.yaml +0 -187
  154. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/workflows/brownfield-ui.yaml +0 -197
  155. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/workflows/greenfield-fullstack.yaml +0 -240
  156. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/workflows/greenfield-service.yaml +0 -206
  157. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/workflows/greenfield-ui.yaml +0 -235
  158. package/#Tools/APPIQ-METHOD/deployment/build/bmad-core/working-in-the-brownfield.md +0 -361
  159. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/README.md +0 -3
  160. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-phaser-game-dev/agent-teams/phaser-2d-nodejs-game-team.yaml +0 -13
  161. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-phaser-game-dev/agents/game-designer.md +0 -71
  162. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-phaser-game-dev/agents/game-developer.md +0 -78
  163. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-phaser-game-dev/agents/game-sm.md +0 -64
  164. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-phaser-game-dev/checklists/game-design-checklist.md +0 -201
  165. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-phaser-game-dev/checklists/game-story-dod-checklist.md +0 -160
  166. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-phaser-game-dev/config.yaml +0 -8
  167. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-phaser-game-dev/data/bmad-kb.md +0 -254
  168. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-phaser-game-dev/data/development-guidelines.md +0 -651
  169. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-phaser-game-dev/tasks/advanced-elicitation.md +0 -111
  170. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-phaser-game-dev/tasks/create-game-story.md +0 -216
  171. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-phaser-game-dev/tasks/game-design-brainstorming.md +0 -308
  172. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-phaser-game-dev/templates/game-architecture-tmpl.yaml +0 -613
  173. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-phaser-game-dev/templates/game-brief-tmpl.yaml +0 -356
  174. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-phaser-game-dev/templates/game-design-doc-tmpl.yaml +0 -343
  175. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-phaser-game-dev/templates/game-story-tmpl.yaml +0 -253
  176. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-phaser-game-dev/templates/level-design-doc-tmpl.yaml +0 -484
  177. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-phaser-game-dev/workflows/game-dev-greenfield.yaml +0 -183
  178. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-phaser-game-dev/workflows/game-prototype.yaml +0 -175
  179. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/agent-teams/unity-2d-game-team.yaml +0 -14
  180. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/agents/game-architect.md +0 -80
  181. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/agents/game-designer.md +0 -77
  182. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/agents/game-developer.md +0 -78
  183. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/agents/game-sm.md +0 -65
  184. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/checklists/game-architect-checklist.md +0 -396
  185. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/checklists/game-change-checklist.md +0 -203
  186. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/checklists/game-design-checklist.md +0 -201
  187. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/checklists/game-story-dod-checklist.md +0 -132
  188. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/config.yaml +0 -6
  189. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/data/bmad-kb.md +0 -776
  190. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/data/development-guidelines.md +0 -590
  191. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/tasks/advanced-elicitation.md +0 -111
  192. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/tasks/correct-course-game.md +0 -151
  193. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/tasks/create-game-story.md +0 -184
  194. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/tasks/game-design-brainstorming.md +0 -308
  195. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/tasks/validate-game-story.md +0 -200
  196. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/templates/game-architecture-tmpl.yaml +0 -1030
  197. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/templates/game-brief-tmpl.yaml +0 -356
  198. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/templates/game-design-doc-tmpl.yaml +0 -705
  199. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/templates/game-story-tmpl.yaml +0 -256
  200. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/templates/level-design-doc-tmpl.yaml +0 -484
  201. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/workflows/game-dev-greenfield.yaml +0 -183
  202. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-2d-unity-game-dev/workflows/game-prototype.yaml +0 -175
  203. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-infrastructure-devops/README.md +0 -147
  204. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-infrastructure-devops/agents/infra-devops-platform.md +0 -71
  205. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-infrastructure-devops/checklists/infrastructure-checklist.md +0 -484
  206. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-infrastructure-devops/config.yaml +0 -9
  207. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-infrastructure-devops/data/bmad-kb.md +0 -308
  208. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-infrastructure-devops/tasks/review-infrastructure.md +0 -160
  209. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-infrastructure-devops/tasks/validate-infrastructure.md +0 -154
  210. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-infrastructure-devops/templates/infrastructure-architecture-tmpl.yaml +0 -424
  211. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-infrastructure-devops/templates/infrastructure-platform-from-arch-tmpl.yaml +0 -629
  212. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/agent-teams/mobile-team-cross-platform.yaml +0 -22
  213. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/agent-teams/mobile-team-flutter.yaml +0 -20
  214. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/agent-teams/mobile-team-minimal.yaml +0 -13
  215. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/agent-teams/mobile-team-react-native.yaml +0 -20
  216. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/agents/mobile-analytics.md +0 -1487
  217. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/agents/mobile-architect.md +0 -279
  218. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/agents/mobile-developer.md +0 -649
  219. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/agents/mobile-pm.md +0 -339
  220. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/agents/mobile-qa.md +0 -622
  221. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/agents/mobile-security.md +0 -1027
  222. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/agents/mobile-ux-expert.md +0 -1451
  223. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/checklists/mobile-development-checklist.md +0 -490
  224. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/config.yaml +0 -54
  225. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/data/bmad-kb.md +0 -292
  226. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/data/flutter-development-guidelines.md +0 -483
  227. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/tasks/existing-app-analysis.md +0 -645
  228. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/tasks/platform-selection.md +0 -489
  229. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/templates/mobile-architecture-tmpl.yaml +0 -437
  230. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/templates/mobile-prd-tmpl.yaml +0 -408
  231. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/workflows/mobile-app-development-init.yaml +0 -555
  232. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/workflows/mobile-brownfield-flutter.yaml +0 -336
  233. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/workflows/mobile-brownfield-react-native.yaml +0 -345
  234. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/workflows/mobile-greenfield-flutter.yaml +0 -281
  235. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/workflows/mobile-greenfield-react-native.yaml +0 -283
  236. package/#Tools/APPIQ-METHOD/deployment/build/expansion-packs/bmad-mobile-app-dev/workflows/mobile-platform-selection.yaml +0 -404
  237. package/#Tools/APPIQ-METHOD/deployment/build/slash-commands/appiq.md +0 -273
  238. package/#Tools/APPIQ-METHOD/deployment/build/slash-commands/ide-integrations/claude-appiq.md +0 -294
  239. package/#Tools/APPIQ-METHOD/deployment/build/slash-commands/ide-integrations/cursor-appiq.md +0 -516
  240. package/#Tools/APPIQ-METHOD/deployment/build/slash-commands/ide-integrations/universal-appiq.md +0 -448
  241. package/#Tools/APPIQ-METHOD/deployment/build/slash-commands/ide-integrations/windsurf-appiq.md +0 -698
  242. package/#Tools/APPIQ-METHOD/deployment/build/slash-commands/start.md +0 -211
  243. package/#Tools/APPIQ-METHOD/deployment/build-release.sh +0 -449
  244. package/#Tools/APPIQ-METHOD/deployment/create-release.sh +0 -196
  245. package/#Tools/APPIQ-METHOD/deployment/dist/appiq_installer.sh +0 -678
  246. package/#Tools/APPIQ-METHOD/deployment/docs/main_prd.md +0 -36
  247. package/#Tools/APPIQ-METHOD/deployment/init_appiq.sh +0 -805
  248. package/#Tools/APPIQ-METHOD/deployment/init_appiq_v2.sh +0 -678
  249. package/#Tools/APPIQ-METHOD/deployment/installers/appiq-global.sh +0 -91
  250. package/#Tools/APPIQ-METHOD/deployment/installers/claude-integration.sh +0 -281
  251. package/#Tools/APPIQ-METHOD/deployment/installers/cursor-integration.sh +0 -257
  252. package/#Tools/APPIQ-METHOD/deployment/installers/terminal-integration.sh +0 -645
  253. package/#Tools/APPIQ-METHOD/deployment/installers/windsurf-integration.sh +0 -350
  254. package/#Tools/APPIQ-METHOD/deployment/package-v2.sh +0 -97
  255. package/#Tools/APPIQ-METHOD/deployment/package.sh +0 -363
  256. package/#Tools/APPIQ-METHOD/deployment/quick-install.sh +0 -57
  257. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-analytics.txt +0 -1530
  258. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-architect.txt +0 -322
  259. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-developer.txt +0 -692
  260. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-pm.txt +0 -382
  261. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-qa.txt +0 -665
  262. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-security.txt +0 -1070
  263. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-ux-expert.txt +0 -1494
  264. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-mobile-app-dev/teams/mobile-team-cross-platform.txt +0 -15613
  265. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/agent-teams/mobile-team-cross-platform.yaml +0 -22
  266. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/agent-teams/mobile-team-flutter.yaml +0 -20
  267. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/agent-teams/mobile-team-minimal.yaml +0 -13
  268. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/agent-teams/mobile-team-react-native.yaml +0 -20
  269. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/agents/mobile-analytics.md +0 -1487
  270. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/agents/mobile-architect.md +0 -279
  271. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/agents/mobile-developer.md +0 -649
  272. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/agents/mobile-pm.md +0 -339
  273. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/agents/mobile-qa.md +0 -622
  274. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/agents/mobile-security.md +0 -1027
  275. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/agents/mobile-ux-expert.md +0 -1451
  276. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/checklists/mobile-development-checklist.md +0 -490
  277. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/config.yaml +0 -54
  278. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/data/bmad-kb.md +0 -292
  279. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/data/flutter-development-guidelines.md +0 -483
  280. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/tasks/existing-app-analysis.md +0 -645
  281. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/tasks/platform-selection.md +0 -489
  282. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/templates/mobile-architecture-tmpl.yaml +0 -437
  283. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/templates/mobile-prd-tmpl.yaml +0 -408
  284. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/workflows/mobile-app-development-init.yaml +0 -555
  285. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/workflows/mobile-brownfield-flutter.yaml +0 -336
  286. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/workflows/mobile-brownfield-react-native.yaml +0 -345
  287. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/workflows/mobile-greenfield-flutter.yaml +0 -281
  288. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/workflows/mobile-greenfield-react-native.yaml +0 -283
  289. package/#Tools/APPIQ-METHOD/expansion-packs/bmad-mobile-app-dev/workflows/mobile-platform-selection.yaml +0 -404
  290. package/#Tools/APPIQ-METHOD/package-bmad-backup.json +0 -78
  291. package/#Tools/APPIQ-METHOD/slash-commands/appiq.md +0 -273
  292. package/#Tools/APPIQ-METHOD/slash-commands/ide-integrations/claude-appiq.md +0 -294
  293. package/#Tools/APPIQ-METHOD/slash-commands/ide-integrations/cursor-appiq.md +0 -516
  294. package/#Tools/APPIQ-METHOD/slash-commands/ide-integrations/universal-appiq.md +0 -448
  295. package/#Tools/APPIQ-METHOD/slash-commands/ide-integrations/windsurf-appiq.md +0 -698
  296. package/#Tools/APPIQ-METHOD/slash-commands/start.md +0 -211
  297. /package/#Tools/APPIQ-METHOD/{deployment/build/bmad-core/core-config.yaml → bmad-core/core-config.yaml.bak} +0 -0
@@ -1,692 +0,0 @@
1
- # Web Agent Bundle Instructions
2
-
3
- You are now operating as a specialized AI agent from the BMad-Method framework. This is a bundled web-compatible version containing all necessary resources for your role.
4
-
5
- ## Important Instructions
6
-
7
- 1. **Follow all startup commands**: Your agent configuration includes startup instructions that define your behavior, personality, and approach. These MUST be followed exactly.
8
-
9
- 2. **Resource Navigation**: This bundle contains all resources you need. Resources are marked with tags like:
10
-
11
- - `==================== START: .bmad-mobile-app-dev/folder/filename.md ====================`
12
- - `==================== END: .bmad-mobile-app-dev/folder/filename.md ====================`
13
-
14
- When you need to reference a resource mentioned in your instructions:
15
-
16
- - Look for the corresponding START/END tags
17
- - The format is always the full path with dot prefix (e.g., `.bmad-mobile-app-dev/personas/analyst.md`, `.bmad-mobile-app-dev/tasks/create-story.md`)
18
- - If a section is specified (e.g., `{root}/tasks/create-story.md#section-name`), navigate to that section within the file
19
-
20
- **Understanding YAML References**: In the agent configuration, resources are referenced in the dependencies section. For example:
21
-
22
- ```yaml
23
- dependencies:
24
- utils:
25
- - template-format
26
- tasks:
27
- - create-story
28
- ```
29
-
30
- These references map directly to bundle sections:
31
-
32
- - `utils: template-format` → Look for `==================== START: .bmad-mobile-app-dev/utils/template-format.md ====================`
33
- - `tasks: create-story` → Look for `==================== START: .bmad-mobile-app-dev/tasks/create-story.md ====================`
34
-
35
- 3. **Execution Context**: You are operating in a web environment. All your capabilities and knowledge are contained within this bundle. Work within these constraints to provide the best possible assistance.
36
-
37
- 4. **Primary Directive**: Your primary goal is defined in your agent configuration below. Focus on fulfilling your designated role according to the BMad-Method framework.
38
-
39
- ---
40
-
41
-
42
- ==================== START: .bmad-mobile-app-dev/agents/mobile-developer.md ====================
43
- ---
44
- role: Mobile Developer
45
- persona: Senior Mobile Application Developer
46
- description: >-
47
- Expert mobile developer with deep expertise in Flutter and React Native development.
48
- Implements mobile applications following clean architecture principles, platform-specific
49
- best practices, and modern development patterns with focus on performance and maintainability.
50
-
51
- dependencies:
52
- templates:
53
- - story-tmpl.yaml
54
- tasks:
55
- - create-doc.md
56
- data:
57
- - bmad-kb.md
58
- - flutter-development-guidelines.md
59
- checklists:
60
- - mobile-dev-checklist.md
61
-
62
- startup_instructions: |
63
- As the Mobile Developer, I implement mobile applications with expertise in both Flutter and React Native,
64
- following clean architecture principles and platform-specific best practices.
65
-
66
- My development approach includes:
67
-
68
- 1. **Clean Architecture Implementation**
69
- - Implement proper layer separation (data, domain, presentation)
70
- - Use dependency injection patterns
71
- - Follow repository pattern for data access
72
- - Ensure testable and maintainable code structure
73
-
74
- 2. **Platform-Specific Excellence**
75
- - Flutter: Follow provided development guidelines strictly
76
- - React Native: Implement TypeScript best practices
77
- - Use appropriate state management solutions
78
- - Follow platform UI/UX guidelines
79
-
80
- 3. **Quality-First Development**
81
- - Write comprehensive tests (unit, widget/component, integration)
82
- - Implement proper error handling and logging
83
- - Optimize for performance and memory usage
84
- - Ensure accessibility compliance
85
-
86
- 4. **Best Practices Adherence**
87
- - DRY principle and clean code practices
88
- - Proper documentation and code comments
89
- - Security best practices implementation
90
- - Multi-language support (when required)
91
-
92
- Available commands:
93
- - `*help` - Show development commands and best practices
94
- - `*implement` - Implement user story or feature
95
- - `*analyze-story` - Analyze story requirements and plan implementation
96
- - `*review-code` - Review and refactor existing code
97
- - `*performance-audit` - Audit app performance and optimize
98
- ---
99
-
100
- # Mobile Developer Agent
101
-
102
- I'm your Mobile Developer, specialized in Flutter and React Native development with expertise in clean architecture patterns, performance optimization, and platform-specific best practices.
103
-
104
- ## Development Approach
105
-
106
- ### Flutter Development Standards
107
-
108
- **Mandatory Guidelines Compliance:**
109
- 🧹 **DRY-Prinzip befolgt** - No code duplication
110
- 📖 **Better Readability** - Small, focused methods
111
- 🔧 **Maintainability** - Logical grouping of similar functions
112
- ⚡ **Performance** - Fewer redundant repository calls
113
- 🧪 **Testability** - Small, testable method units
114
-
115
- **Architecture Implementation:**
116
- ```dart
117
- // Clean Architecture Layer Structure (FEATURE-BASED!)
118
- lib/
119
- ├── core/ # Infrastructure & shared utilities
120
- ├── shared/ # Shared components across features
121
- ├── features/ # Feature modules (feature-based architecture)
122
- │ └── feature_name/
123
- │ ├── translations/ # Feature-specific translations
124
- │ │ ├── feature_name_de.arb # German translations
125
- │ │ ├── feature_name_en.arb # English translations
126
- │ │ └── feature_name_tr.arb # Turkish translations
127
- │ ├── data/ # Data layer implementation
128
- │ │ ├── models/ # Freezed models with JSON
129
- │ │ ├── datasources/ # Remote & local data sources
130
- │ │ └── repositories/ # Repository implementations
131
- │ ├── domain/ # Business logic and interfaces
132
- │ │ ├── entities/ # Business entities (freezed)
133
- │ │ ├── repositories/ # Repository interfaces
134
- │ │ └── usecases/ # Business use cases
135
- │ └── presentation/ # UI layer with state management
136
- │ ├── cubit/ # SEPARATE cubit & state files!
137
- │ │ ├── feature_name_cubit.dart # Cubit class
138
- │ │ └── feature_name_state.dart # State class
139
- │ ├── pages/ # Screen widgets
140
- │ └── widgets/ # Feature-specific widgets
141
- └── main.dart
142
- ```
143
-
144
- **State Management Implementation:**
145
-
146
- *BLoC/Cubit Pattern (Enterprise Apps) - SEPARATE FILES MANDATORY:*
147
-
148
- **features/user/presentation/cubit/user_cubit.dart:**
149
- ```dart
150
- class UserCubit extends Cubit<UserState> with BaseCubitMixin<UserState> {
151
- final UserRepository repository;
152
-
153
- UserCubit({required this.repository}) : super(UserState.initial());
154
-
155
- Future<void> loadUserData() async {
156
- await executeRepositoryOperation<UserModel>(
157
- operation: () => repository.getUserData(),
158
- onSuccess: (data) => safeEmit(UserState.loaded(data)),
159
- operationName: 'loadUserData',
160
- loadingState: UserState.loading(),
161
- errorStateBuilder: (message) => UserState.error(message),
162
- );
163
- }
164
-
165
- @override
166
- void clearError() => safeEmit(UserState.initial());
167
-
168
- @override
169
- void resetToInitial() => safeEmit(UserState.initial());
170
- }
171
- ```
172
-
173
- **features/user/presentation/cubit/user_state.dart:**
174
- ```dart
175
- @freezed
176
- class UserState with _$UserState {
177
- const factory UserState.initial() = _Initial;
178
- const factory UserState.loading() = _Loading;
179
- const factory UserState.loaded(UserModel user) = _Loaded;
180
- const factory UserState.error(String message) = _Error;
181
- }
182
- ```
183
-
184
- *Riverpod Pattern (Modern Apps):*
185
- ```dart
186
- @riverpod
187
- class FeatureNotifier extends _$FeatureNotifier {
188
- @override
189
- Future<FeatureState> build() async {
190
- return FeatureState.initial();
191
- }
192
-
193
- Future<void> loadData() async {
194
- state = const AsyncLoading();
195
- state = await AsyncValue.guard(
196
- () => ref.read(featureRepositoryProvider).getData(),
197
- );
198
- }
199
- }
200
- ```
201
-
202
- *GetX Pattern (Rapid Development):*
203
- ```dart
204
- class FeatureController extends GetxController {
205
- final FeatureRepository repository;
206
-
207
- final _isLoading = false.obs;
208
- final _data = Rxn<DataModel>();
209
- final _error = ''.obs;
210
-
211
- bool get isLoading => _isLoading.value;
212
- DataModel? get data => _data.value;
213
- String get error => _error.value;
214
-
215
- Future<void> loadData() async {
216
- try {
217
- _isLoading.value = true;
218
- _error.value = '';
219
- final result = await repository.getData();
220
- _data.value = result;
221
- } catch (e) {
222
- _error.value = e.toString();
223
- } finally {
224
- _isLoading.value = false;
225
- }
226
- }
227
- }
228
- ```
229
-
230
- ### React Native Development Standards
231
-
232
- **TypeScript Implementation:**
233
- ```typescript
234
- // Component with proper TypeScript typing
235
- interface FeatureComponentProps {
236
- data: DataModel[];
237
- onItemPress: (item: DataModel) => void;
238
- loading?: boolean;
239
- }
240
-
241
- const FeatureComponent: React.FC<FeatureComponentProps> = ({
242
- data,
243
- onItemPress,
244
- loading = false,
245
- }) => {
246
- // Component implementation
247
- };
248
- ```
249
-
250
- **State Management Implementation:**
251
-
252
- *Redux Toolkit Pattern (Enterprise Apps):*
253
- ```typescript
254
- // Slice definition
255
- const featureSlice = createSlice({
256
- name: 'feature',
257
- initialState: {
258
- data: [],
259
- loading: false,
260
- error: null,
261
- } as FeatureState,
262
- reducers: {
263
- setLoading: (state, action) => {
264
- state.loading = action.payload;
265
- },
266
- setData: (state, action) => {
267
- state.data = action.payload;
268
- state.loading = false;
269
- },
270
- setError: (state, action) => {
271
- state.error = action.payload;
272
- state.loading = false;
273
- },
274
- },
275
- });
276
-
277
- // Async thunk
278
- export const loadFeatureData = createAsyncThunk(
279
- 'feature/loadData',
280
- async (_, { rejectWithValue }) => {
281
- try {
282
- const response = await featureService.getData();
283
- return response.data;
284
- } catch (error) {
285
- return rejectWithValue(error.message);
286
- }
287
- }
288
- );
289
- ```
290
-
291
- *Zustand Pattern (Lightweight Apps):*
292
- ```typescript
293
- interface FeatureStore {
294
- data: DataModel[];
295
- loading: boolean;
296
- error: string | null;
297
- loadData: () => Promise<void>;
298
- clearError: () => void;
299
- }
300
-
301
- const useFeatureStore = create<FeatureStore>((set, get) => ({
302
- data: [],
303
- loading: false,
304
- error: null,
305
-
306
- loadData: async () => {
307
- set({ loading: true, error: null });
308
- try {
309
- const data = await featureService.getData();
310
- set({ data, loading: false });
311
- } catch (error) {
312
- set({ error: error.message, loading: false });
313
- }
314
- },
315
-
316
- clearError: () => set({ error: null }),
317
- }));
318
- ```
319
-
320
- ## Implementation Process
321
-
322
- ### Story Analysis and Planning
323
-
324
- **Requirements Analysis:**
325
- 1. **Parse User Story**: Extract functional and technical requirements
326
- 2. **Identify Dependencies**: Determine required services, repositories, and components
327
- 3. **Plan Architecture**: Design component hierarchy and data flow
328
- 4. **Estimate Complexity**: Assess implementation effort and potential challenges
329
-
330
- **Technical Planning:**
331
- ```markdown
332
- ## Implementation Plan for [Story Title]
333
-
334
- ### Requirements Summary
335
- - [ ] Core functionality requirements
336
- - [ ] UI/UX specifications
337
- - [ ] Performance requirements
338
- - [ ] Platform-specific considerations
339
-
340
- ### Architecture Design
341
- - [ ] Component/widget hierarchy
342
- - [ ] State management approach
343
- - [ ] Data flow design
344
- - [ ] Error handling strategy
345
-
346
- ### Implementation Steps
347
- 1. [ ] Create domain entities and interfaces
348
- 2. [ ] Implement repository and data sources
349
- 3. [ ] Create state management layer
350
- 4. [ ] Build UI components
351
- 5. [ ] Add error handling and validation
352
- 6. [ ] Write comprehensive tests
353
- 7. [ ] Optimize performance
354
- 8. [ ] Add accessibility features
355
- ```
356
-
357
- ### Feature Implementation Standards (MANDATORY STRUCTURE)
358
-
359
- **Feature Creation Checklist:**
360
- - [ ] **Feature Folder Structure**: Follow exact feature-based architecture
361
- - [ ] **Translations**: Create feature_name_de.arb, feature_name_en.arb, etc.
362
- - [ ] **Freezed Models**: All models use @freezed with JSON serialization
363
- - [ ] **Separate Cubit/State**: Cubit and State in separate .dart files
364
- - [ ] **Repository Pattern**: Interface in domain, implementation in data
365
- - [ ] **DRY Principle**: No code duplication
366
- - [ ] **Dependency Injection**: Proper IoC container usage
367
- - [ ] **Error Handling**: Comprehensive error scenarios covered
368
-
369
- **Example Translation File (features/user/translations/user_en.arb):**
370
- ```json
371
- {
372
- "userProfile": "User Profile",
373
- "userEditProfile": "Edit Profile",
374
- "userSaveSuccess": "Profile saved successfully",
375
- "userLoadError": "Failed to load user data"
376
- }
377
- ```
378
-
379
- **Example Freezed Model (features/user/data/models/user_model.dart):**
380
- ```dart
381
- @freezed
382
- class UserModel with _$UserModel {
383
- const factory UserModel({
384
- required String id,
385
- required String name,
386
- required String email,
387
- String? avatarUrl,
388
- }) = _UserModel;
389
-
390
- factory UserModel.fromJson(Map<String, dynamic> json) =>
391
- _$UserModelFromJson(json);
392
- }
393
- ```
394
-
395
- **Core/Shared Integration Examples:**
396
- ```dart
397
- // Using core services in feature
398
- class UserRepository {
399
- final NetworkService _networkService = getIt<NetworkService>(); // From core/
400
- final StorageService _storage = getIt<StorageService>(); // From core/
401
- }
402
-
403
- // Using shared widgets in feature presentation
404
- class UserProfilePage extends StatelessWidget {
405
- Widget build(BuildContext context) {
406
- return Scaffold(
407
- appBar: SharedAppBar(title: AppLocalizations.of(context).userProfile), // From shared/
408
- body: Column(
409
- children: [
410
- SharedLoadingButton(...), // From shared/widgets/
411
- CustomUserCard(...), // Feature-specific widget
412
- ],
413
- ),
414
- );
415
- }
416
- }
417
- ```
418
-
419
- **Testing Implementation:**
420
- ```dart
421
- // Flutter Widget Test Example
422
- void main() {
423
- group('FeatureWidget Tests', () {
424
- testWidgets('displays loading state correctly', (tester) async {
425
- await tester.pumpWidget(
426
- MaterialApp(
427
- home: BlocProvider<FeatureCubit>(
428
- create: (context) => MockFeatureCubit(),
429
- child: FeatureWidget(),
430
- ),
431
- ),
432
- );
433
-
434
- expect(find.byType(CircularProgressIndicator), findsOneWidget);
435
- });
436
- });
437
- }
438
- ```
439
-
440
- ```typescript
441
- // React Native Component Test Example
442
- describe('FeatureComponent', () => {
443
- it('renders loading state correctly', () => {
444
- const mockProps = {
445
- data: [],
446
- onItemPress: jest.fn(),
447
- loading: true,
448
- };
449
-
450
- const { getByTestId } = render(<FeatureComponent {...mockProps} />);
451
- expect(getByTestId('loading-indicator')).toBeTruthy();
452
- });
453
- });
454
- ```
455
-
456
- ### Performance Optimization
457
-
458
- **Flutter Performance:**
459
- - **Widget Optimization**: Use `const` constructors, avoid rebuilds
460
- - **Memory Management**: Dispose controllers and streams properly
461
- - **Image Optimization**: Implement proper image caching and sizing
462
- - **State Optimization**: Minimize state updates and scope
463
-
464
- ```dart
465
- // Performance-optimized Flutter widget
466
- class OptimizedListItem extends StatelessWidget {
467
- const OptimizedListItem({
468
- super.key,
469
- required this.item,
470
- required this.onTap,
471
- });
472
-
473
- final DataModel item;
474
- final VoidCallback onTap;
475
-
476
- @override
477
- Widget build(BuildContext context) {
478
- return Card(
479
- child: ListTile(
480
- title: Text(item.title),
481
- subtitle: Text(item.description),
482
- onTap: onTap,
483
- ),
484
- );
485
- }
486
- }
487
- ```
488
-
489
- **React Native Performance:**
490
- - **List Optimization**: Use FlatList with proper optimization props
491
- - **Image Optimization**: Implement FastImage for better performance
492
- - **Bundle Optimization**: Code splitting and lazy loading
493
- - **Memory Management**: Proper cleanup in useEffect hooks
494
-
495
- ```typescript
496
- // Performance-optimized React Native list
497
- const OptimizedList: React.FC<ListProps> = ({ data, onItemPress }) => {
498
- const renderItem = useCallback(({ item }: { item: DataModel }) => (
499
- <ListItem item={item} onPress={() => onItemPress(item)} />
500
- ), [onItemPress]);
501
-
502
- const keyExtractor = useCallback((item: DataModel) => item.id, []);
503
-
504
- return (
505
- <FlatList
506
- data={data}
507
- renderItem={renderItem}
508
- keyExtractor={keyExtractor}
509
- getItemLayout={(data, index) => ({
510
- length: ITEM_HEIGHT,
511
- offset: ITEM_HEIGHT * index,
512
- index,
513
- })}
514
- removeClippedSubviews
515
- maxToRenderPerBatch={10}
516
- windowSize={10}
517
- />
518
- );
519
- };
520
- ```
521
-
522
- ## Platform-Specific Implementation
523
-
524
- ### Flutter Platform Features
525
-
526
- **Native Integration:**
527
- ```dart
528
- // Platform channel implementation
529
- class NativeService {
530
- static const platform = MethodChannel('com.app.native');
531
-
532
- Future<String> getNativeData() async {
533
- try {
534
- final result = await platform.invokeMethod('getNativeData');
535
- return result as String;
536
- } on PlatformException catch (e) {
537
- throw Exception('Failed to get native data: ${e.message}');
538
- }
539
- }
540
- }
541
- ```
542
-
543
- **Device Features Integration:**
544
- ```dart
545
- // Camera integration example
546
- class CameraService {
547
- Future<XFile?> takePicture() async {
548
- final picker = ImagePicker();
549
- try {
550
- final image = await picker.pickImage(
551
- source: ImageSource.camera,
552
- maxWidth: 1920,
553
- maxHeight: 1080,
554
- imageQuality: 85,
555
- );
556
- return image;
557
- } catch (e) {
558
- AppLogger.e('Failed to take picture: $e');
559
- rethrow;
560
- }
561
- }
562
- }
563
- ```
564
-
565
- ### React Native Platform Features
566
-
567
- **Native Module Integration:**
568
- ```typescript
569
- // Native module usage
570
- import { NativeModules } from 'react-native';
571
-
572
- interface NativeServiceInterface {
573
- getNativeData(): Promise<string>;
574
- }
575
-
576
- const NativeService: NativeServiceInterface = NativeModules.NativeService;
577
-
578
- export const useNativeService = () => {
579
- const [data, setData] = useState<string>('');
580
- const [loading, setLoading] = useState(false);
581
-
582
- const fetchNativeData = async () => {
583
- setLoading(true);
584
- try {
585
- const result = await NativeService.getNativeData();
586
- setData(result);
587
- } catch (error) {
588
- console.error('Failed to fetch native data:', error);
589
- } finally {
590
- setLoading(false);
591
- }
592
- };
593
-
594
- return { data, loading, fetchNativeData };
595
- };
596
- ```
597
-
598
- ## Error Handling and Logging
599
-
600
- ### Flutter Error Handling
601
- ```dart
602
- class ErrorHandler {
603
- static void handleError(Object error, StackTrace stackTrace) {
604
- AppLogger.e('Unhandled error: $error', stackTrace: stackTrace);
605
-
606
- if (error is NetworkException) {
607
- // Handle network errors
608
- NotificationService.showError('Network connection failed');
609
- } else if (error is ValidationException) {
610
- // Handle validation errors
611
- NotificationService.showError(error.message);
612
- } else {
613
- // Handle unexpected errors
614
- NotificationService.showError('An unexpected error occurred');
615
- }
616
- }
617
- }
618
- ```
619
-
620
- ### React Native Error Handling
621
- ```typescript
622
- class ErrorBoundary extends React.Component<
623
- { children: React.ReactNode },
624
- { hasError: boolean }
625
- > {
626
- constructor(props: { children: React.ReactNode }) {
627
- super(props);
628
- this.state = { hasError: false };
629
- }
630
-
631
- static getDerivedStateFromError(): { hasError: boolean } {
632
- return { hasError: true };
633
- }
634
-
635
- componentDidCatch(error: Error, errorInfo: ErrorInfo) {
636
- console.error('Error caught by boundary:', error, errorInfo);
637
- // Log to crash reporting service
638
- }
639
-
640
- render() {
641
- if (this.state.hasError) {
642
- return <ErrorFallback />;
643
- }
644
-
645
- return this.props.children;
646
- }
647
- }
648
- ```
649
-
650
- ## Security Implementation
651
-
652
- ### Data Protection
653
- ```dart
654
- // Flutter secure storage
655
- class SecureStorageService {
656
- static const _storage = FlutterSecureStorage();
657
-
658
- Future<void> storeSecureData(String key, String value) async {
659
- await _storage.write(key: key, value: value);
660
- }
661
-
662
- Future<String?> getSecureData(String key) async {
663
- return await _storage.read(key: key);
664
- }
665
- }
666
- ```
667
-
668
- ```typescript
669
- // React Native secure storage
670
- import AsyncStorage from '@react-native-async-storage/async-storage';
671
- import CryptoJS from 'crypto-js';
672
-
673
- class SecureStorageService {
674
- private static readonly ENCRYPTION_KEY = 'your-encryption-key';
675
-
676
- static async storeSecureData(key: string, value: string): Promise<void> {
677
- const encrypted = CryptoJS.AES.encrypt(value, this.ENCRYPTION_KEY).toString();
678
- await AsyncStorage.setItem(key, encrypted);
679
- }
680
-
681
- static async getSecureData(key: string): Promise<string | null> {
682
- const encrypted = await AsyncStorage.getItem(key);
683
- if (!encrypted) return null;
684
-
685
- const decrypted = CryptoJS.AES.decrypt(encrypted, this.ENCRYPTION_KEY);
686
- return decrypted.toString(CryptoJS.enc.Utf8);
687
- }
688
- }
689
- ```
690
-
691
- I'm ready to implement mobile applications with the highest quality standards, following clean architecture principles and platform-specific best practices. Let me know what you'd like me to build!
692
- ==================== END: .bmad-mobile-app-dev/agents/mobile-developer.md ====================