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
@@ -0,0 +1,551 @@
1
+ # Flutter Clean Architecture Development Guidelines
2
+
3
+ ## 📋 Project Overview
4
+
5
+ This guide establishes comprehensive Flutter development standards following Clean Architecture principles, ensuring scalable, testable, and maintainable mobile applications.
6
+
7
+ ## 🏗️ Architecture Overview
8
+
9
+ ### Clean Architecture Layers
10
+
11
+ ```
12
+ lib/
13
+ ├── core/ # Shared Core Functionality
14
+ │ ├── constants/ # API endpoints, app constants
15
+ │ ├── di/ # Dependency injection setup
16
+ │ ├── error/ # Error handling (failures, exceptions)
17
+ │ ├── network/ # Networking setup (API client, network info)
18
+ │ ├── local_storage/ # Hive/SharedPrefs service for local storage
19
+ │ └── utils/ # Core utilities and helpers
20
+ ├── features/ # Feature-based modules
21
+ │ └── [feature_name]/ # Individual features
22
+ │ ├── data/ # Data layer
23
+ │ │ ├── datasources/ # Remote/Local data sources
24
+ │ │ ├── models/ # Data models with JSON serialization
25
+ │ │ └── repositories/ # Repository implementations
26
+ │ ├── domain/ # Domain layer (Business Logic)
27
+ │ │ ├── entities/ # Business entities
28
+ │ │ ├── repositories/ # Repository interfaces
29
+ │ │ └── usecases/ # Business use cases
30
+ │ └── presentation/ # Presentation layer (UI)
31
+ │ ├── cubit/ # State management (Cubit + State)
32
+ │ ├── pages/ # UI pages/screens
33
+ │ └── widgets/ # Feature-specific widgets
34
+ ├── shared/ # Shared UI components and utilities
35
+ │ ├── theme/ # Theme management
36
+ │ ├── widgets/ # Reusable widgets (BaseScaffold, etc.)
37
+ │ ├── constants/ # UI constants
38
+ │ └── utils/ # Shared utilities
39
+ └── l10n/ # Localization files (.arb)
40
+ ```
41
+
42
+ ## 🎯 Development Patterns & Style Guide
43
+
44
+ ### 1. Entity Pattern (Domain Layer)
45
+
46
+ **Struktur:**
47
+ - Extends `Equatable` für Value Equality
48
+ - Immutable mit `const` Konstruktoren
49
+ - `copyWith` Methoden für Updates
50
+ - Alle Properties in `props` Liste
51
+
52
+ ```dart
53
+ class UserEntity extends Equatable {
54
+ const UserEntity({
55
+ required this.id,
56
+ required this.name,
57
+ required this.email,
58
+ this.bio,
59
+ this.avatarUrl,
60
+ this.createdAt,
61
+ this.updatedAt,
62
+ });
63
+
64
+ final String id;
65
+ final String name;
66
+ final String email;
67
+ final String? bio;
68
+ final String? avatarUrl;
69
+ final DateTime? createdAt;
70
+ final DateTime? updatedAt;
71
+
72
+ @override
73
+ List<Object?> get props => [
74
+ id, name, email, bio, avatarUrl, createdAt, updatedAt,
75
+ ];
76
+
77
+ UserEntity copyWith({
78
+ String? id,
79
+ String? name,
80
+ String? email,
81
+ String? bio,
82
+ String? avatarUrl,
83
+ DateTime? createdAt,
84
+ DateTime? updatedAt,
85
+ }) {
86
+ return UserEntity(
87
+ id: id ?? this.id,
88
+ name: name ?? this.name,
89
+ email: email ?? this.email,
90
+ bio: bio ?? this.bio,
91
+ avatarUrl: avatarUrl ?? this.avatarUrl,
92
+ createdAt: createdAt ?? this.createdAt,
93
+ updatedAt: updatedAt ?? this.updatedAt,
94
+ );
95
+ }
96
+ }
97
+ ```
98
+
99
+ ### 2. Model Pattern (Data Layer)
100
+
101
+ **Struktur:**
102
+ - `@freezed` Annotation für Immutability
103
+ - JSON Serialization mit `json_serializable`
104
+ - `@JsonKey` für API Field Mapping
105
+ - Extension Methods für Entity Conversion
106
+
107
+ ```dart
108
+ import 'package:freezed_annotation/freezed_annotation.dart';
109
+ import '../../domain/entities/user_entity.dart';
110
+
111
+ part 'user_model.freezed.dart';
112
+ part 'user_model.g.dart';
113
+
114
+ @freezed
115
+ class UserModel with _$UserModel {
116
+ const factory UserModel({
117
+ required String id,
118
+ required String name,
119
+ required String email,
120
+ String? bio,
121
+ @JsonKey(name: 'avatar_url') String? avatarUrl,
122
+ @JsonKey(name: 'created_at') String? createdAt,
123
+ @JsonKey(name: 'updated_at') String? updatedAt,
124
+ }) = _UserModel;
125
+
126
+ factory UserModel.fromJson(Map<String, dynamic> json) =>
127
+ _$UserModelFromJson(json);
128
+ }
129
+
130
+ extension UserModelExtension on UserModel {
131
+ UserEntity toEntity() {
132
+ return UserEntity(
133
+ id: id,
134
+ name: name,
135
+ email: email,
136
+ bio: bio,
137
+ avatarUrl: avatarUrl,
138
+ createdAt: createdAt != null ? DateTime.tryParse(createdAt!) : null,
139
+ updatedAt: updatedAt != null ? DateTime.tryParse(updatedAt!) : null,
140
+ );
141
+ }
142
+ }
143
+ ```
144
+
145
+ ### 3. Repository Pattern
146
+
147
+ **Interface (Domain Layer):**
148
+ ```dart
149
+ import 'package:dartz/dartz.dart';
150
+ import '../../../../core/error/failures.dart';
151
+ import '../entities/user_entity.dart';
152
+
153
+ abstract class UserRepository {
154
+ Future<Either<Failure, List<UserEntity>>> getUsers();
155
+ Future<Either<Failure, UserEntity>> getUserById(String id);
156
+ Future<Either<Failure, UserEntity>> createUser(UserEntity user);
157
+ Future<Either<Failure, UserEntity>> updateUser(UserEntity user);
158
+ Future<Either<Failure, void>> deleteUser(String id);
159
+ Future<Either<Failure, List<UserEntity>>> searchUsers(String query);
160
+ }
161
+ ```
162
+
163
+ ### 4. UseCase Pattern
164
+
165
+ **Struktur:**
166
+ - `@injectable` für Dependency Injection
167
+ - `call` Methode als Main Entry Point
168
+ - Business Logic & Validation
169
+ - `Either<Failure, Success>` Return Type
170
+
171
+ ```dart
172
+ import 'package:dartz/dartz.dart';
173
+ import 'package:injectable/injectable.dart';
174
+ import '../../../../core/error/failures.dart';
175
+ import '../entities/user_entity.dart';
176
+ import '../repositories/user_repository.dart';
177
+
178
+ @injectable
179
+ class CreateUserUseCase {
180
+ const CreateUserUseCase(this._repository);
181
+
182
+ final UserRepository _repository;
183
+
184
+ Future<Either<Failure, UserEntity>> call(UserEntity user) async {
185
+ // Validate user data
186
+ final validationResult = _validateUser(user);
187
+ if (validationResult != null) {
188
+ return Left(ValidationFailure(validationResult));
189
+ }
190
+
191
+ return await _repository.createUser(user);
192
+ }
193
+
194
+ String? _validateUser(UserEntity user) {
195
+ if (user.name.trim().isEmpty) {
196
+ return 'Name is required';
197
+ }
198
+
199
+ if (user.email.trim().isEmpty) {
200
+ return 'Email is required';
201
+ }
202
+
203
+ if (!_isValidEmail(user.email)) {
204
+ return 'Please enter a valid email address';
205
+ }
206
+
207
+ return null;
208
+ }
209
+
210
+ bool _isValidEmail(String email) {
211
+ return RegExp(r'^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$').hasMatch(email);
212
+ }
213
+ }
214
+ ```
215
+
216
+ ### 5. State Management Pattern (Cubit)
217
+
218
+ **State Class:**
219
+ ```dart
220
+ import 'package:equatable/equatable.dart';
221
+ import '../../domain/entities/user_entity.dart';
222
+
223
+ enum UserStatus {
224
+ initial,
225
+ loading,
226
+ success,
227
+ failure,
228
+ }
229
+
230
+ class UserState extends Equatable {
231
+ const UserState({
232
+ this.status = UserStatus.initial,
233
+ this.users = const [],
234
+ this.selectedUser,
235
+ this.message,
236
+ });
237
+
238
+ final UserStatus status;
239
+ final List<UserEntity> users;
240
+ final UserEntity? selectedUser;
241
+ final String? message;
242
+
243
+ UserState copyWith({
244
+ UserStatus? status,
245
+ List<UserEntity>? users,
246
+ UserEntity? selectedUser,
247
+ String? message,
248
+ }) {
249
+ return UserState(
250
+ status: status ?? this.status,
251
+ users: users ?? this.users,
252
+ selectedUser: selectedUser ?? this.selectedUser,
253
+ message: message ?? this.message,
254
+ );
255
+ }
256
+
257
+ @override
258
+ List<Object?> get props => [status, users, selectedUser, message];
259
+ }
260
+ ```
261
+
262
+ **Cubit Implementation:**
263
+ ```dart
264
+ import 'package:flutter_bloc/flutter_bloc.dart';
265
+ import 'package:injectable/injectable.dart';
266
+ import '../../domain/entities/user_entity.dart';
267
+ import '../../domain/usecases/get_users_usecase.dart';
268
+ import 'user_state.dart';
269
+
270
+ @injectable
271
+ class UserCubit extends Cubit<UserState> {
272
+ UserCubit(
273
+ this._getUsersUseCase,
274
+ this._createUserUseCase,
275
+ this._updateUserUseCase,
276
+ this._deleteUserUseCase,
277
+ ) : super(const UserState());
278
+
279
+ final GetUsersUseCase _getUsersUseCase;
280
+ final CreateUserUseCase _createUserUseCase;
281
+ final UpdateUserUseCase _updateUserUseCase;
282
+ final DeleteUserUseCase _deleteUserUseCase;
283
+
284
+ Future<void> getUsers() async {
285
+ emit(state.copyWith(status: UserStatus.loading));
286
+
287
+ final result = await _getUsersUseCase();
288
+ result.fold(
289
+ (failure) => emit(state.copyWith(
290
+ status: UserStatus.failure,
291
+ message: failure.message ?? 'Failed to load users',
292
+ )),
293
+ (users) => emit(state.copyWith(
294
+ status: UserStatus.success,
295
+ users: users,
296
+ )),
297
+ );
298
+ }
299
+
300
+ Future<void> createUser(UserEntity user) async {
301
+ emit(state.copyWith(status: UserStatus.loading));
302
+
303
+ final result = await _createUserUseCase(user);
304
+ result.fold(
305
+ (failure) => emit(state.copyWith(
306
+ status: UserStatus.failure,
307
+ message: failure.message ?? 'Failed to create user',
308
+ )),
309
+ (createdUser) {
310
+ final updatedUsers = [...state.users, createdUser];
311
+ emit(state.copyWith(
312
+ status: UserStatus.success,
313
+ users: updatedUsers,
314
+ ));
315
+ },
316
+ );
317
+ }
318
+ }
319
+ ```
320
+
321
+ ## 🛠️ Technology Stack
322
+
323
+ ### Core Dependencies
324
+ - **State Management**: `flutter_bloc` ^8.1.6
325
+ - **Dependency Injection**: `get_it` ^8.0.2 + `injectable` ^2.5.0
326
+ - **Code Generation**: `freezed` ^2.5.7 + `json_serializable` ^6.8.0
327
+ - **Networking**: `dio` ^5.7.0
328
+ - **Local Storage**: `hive` ^2.2.3
329
+ - **Error Handling**: `dartz` ^0.10.1
330
+ - **Value Equality**: `equatable` ^2.0.7
331
+ - **Routing**: `go_router` ^14.0.0
332
+ - **Localization**: `flutter_localizations` + `intl` ^0.19.0
333
+
334
+ ### Dev Dependencies
335
+ - **Build Runner**: `build_runner` ^2.4.13
336
+ - **Code Generation**: `injectable_generator` ^2.6.2
337
+ - **Testing**: `bloc_test` ^9.1.7 + `mocktail` ^1.0.4
338
+
339
+ ## 🌐 Multi-Language Support
340
+
341
+ ### Localization Setup
342
+ ```dart
343
+ // l10n.yaml
344
+ arb-dir: lib/l10n
345
+ template-arb-file: app_en.arb
346
+ output-localization-file: app_localizations.dart
347
+ output-class: AppLocalizations
348
+ ```
349
+
350
+ ### ARB File Structure
351
+ ```json
352
+ // app_en.arb
353
+ {
354
+ "@@locale": "en",
355
+ "appTitle": "My App",
356
+ "@appTitle": {
357
+ "description": "The title of the application"
358
+ },
359
+ "welcomeMessage": "Welcome, {userName}!",
360
+ "@welcomeMessage": {
361
+ "description": "Welcome message with user name",
362
+ "placeholders": {
363
+ "userName": {
364
+ "type": "String",
365
+ "example": "John"
366
+ }
367
+ }
368
+ }
369
+ }
370
+ ```
371
+
372
+ ### Usage in Widgets
373
+ ```dart
374
+ import 'package:flutter_gen/gen_l10n/app_localizations.dart';
375
+
376
+ class MyWidget extends StatelessWidget {
377
+ @override
378
+ Widget build(BuildContext context) {
379
+ final l10n = AppLocalizations.of(context)!;
380
+
381
+ return Text(l10n.welcomeMessage('John'));
382
+ }
383
+ }
384
+ ```
385
+
386
+ ## 🎨 UI/UX Patterns
387
+
388
+ ### Shared Components
389
+
390
+ **BaseScaffold - Responsive Layout:**
391
+ ```dart
392
+ class BaseScaffold extends StatelessWidget {
393
+ const BaseScaffold({
394
+ super.key,
395
+ required this.body,
396
+ this.title,
397
+ this.actions,
398
+ this.floatingActionButton,
399
+ this.safeArea = true,
400
+ });
401
+
402
+ final Widget body;
403
+ final String? title;
404
+ final List<Widget>? actions;
405
+ final Widget? floatingActionButton;
406
+ final bool safeArea;
407
+
408
+ @override
409
+ Widget build(BuildContext context) {
410
+ final l10n = AppLocalizations.of(context)!;
411
+ final mediaQuery = MediaQuery.of(context);
412
+ final isTablet = mediaQuery.size.width >= 768;
413
+
414
+ Widget bodyWidget = body;
415
+
416
+ // Responsive constraints
417
+ if (isTablet) {
418
+ bodyWidget = Center(
419
+ child: ConstrainedBox(
420
+ constraints: const BoxConstraints(maxWidth: 800),
421
+ child: bodyWidget,
422
+ ),
423
+ );
424
+ }
425
+
426
+ return Scaffold(
427
+ appBar: title != null
428
+ ? AppBar(
429
+ title: Text(title!),
430
+ actions: actions,
431
+ )
432
+ : null,
433
+ body: safeArea ? SafeArea(child: bodyWidget) : bodyWidget,
434
+ floatingActionButton: floatingActionButton,
435
+ );
436
+ }
437
+ }
438
+ ```
439
+
440
+ ## 🔧 Development Commands
441
+
442
+ ### Code Generation
443
+ ```bash
444
+ # Generate all code (models, DI, etc.)
445
+ flutter packages pub run build_runner build --delete-conflicting-outputs
446
+
447
+ # Generate localization files
448
+ flutter gen-l10n
449
+
450
+ # Clean and rebuild
451
+ flutter clean && flutter pub get && flutter packages pub run build_runner build --delete-conflicting-outputs
452
+ ```
453
+
454
+ ### Testing
455
+ ```bash
456
+ # Run all tests
457
+ flutter test
458
+
459
+ # Run with coverage
460
+ flutter test --coverage
461
+
462
+ # Run integration tests
463
+ flutter test integration_test/
464
+ ```
465
+
466
+ ## 📋 Naming Conventions
467
+
468
+ ### Files & Directories
469
+ - **Files**: `snake_case.dart`
470
+ - **Directories**: `snake_case/`
471
+ - **Assets**: `snake_case.png`
472
+
473
+ ### Code
474
+ - **Classes**: `PascalCase`
475
+ - **Variables & Methods**: `camelCase`
476
+ - **Constants**: `SCREAMING_SNAKE_CASE` in static classes
477
+ - **Private Members**: `_leadingUnderscore`
478
+
479
+ ### Feature Naming Pattern
480
+ - **Entity**: `FeatureEntity`
481
+ - **Model**: `FeatureModel`
482
+ - **Repository Interface**: `FeatureRepository`
483
+ - **Repository Implementation**: `FeatureRepositoryImpl`
484
+ - **DataSource Interface**: `FeatureRemoteDataSource`
485
+ - **DataSource Implementation**: `FeatureRemoteDataSourceImpl`
486
+ - **UseCase**: `GetFeatureUseCase`, `CreateFeatureUseCase`, etc.
487
+ - **Cubit**: `FeatureCubit`
488
+ - **State**: `FeatureState`
489
+ - **Page**: `FeatureListPage`, `FeatureDetailPage`
490
+
491
+ ## 🎯 Development Guidelines
492
+
493
+ ### Best Practices
494
+ 1. **Immutability**: Alle Data Classes sind immutable
495
+ 2. **Single Responsibility**: Jede Klasse hat eine einzige Verantwortung
496
+ 3. **Dependency Injection**: Alle Dependencies werden injected
497
+ 4. **Error Handling**: Consistent Either<Failure, Success> Pattern
498
+ 5. **Testing**: Jeder Use Case und Repository wird getestet
499
+ 6. **Documentation**: Alle Public APIs sind dokumentiert
500
+ 7. **Localization**: Keine statischen Texte, immer l10n verwenden
501
+ 8. **Security**: Input validation und sichere Datenspeicherung
502
+
503
+ ### Code Quality Checks
504
+ - **Linting**: `flutter_lints` für Code-Qualität
505
+ - **Type Safety**: Null Safety aktiviert
506
+ - **Build Runner**: Regelmäßige Code-Generierung
507
+ - **Testing**: Unit Tests für Business Logic
508
+ - **Security**: Regelmäßige Sicherheitsprüfungen
509
+
510
+ ## 🚀 Standard Workflow
511
+
512
+ ### Development Process
513
+ 1. **Think through the problem** - Analyze requirements and read codebase
514
+ 2. **Write a plan** to tasks/todo.md with checkable items
515
+ 3. **Get plan verified** before beginning work
516
+ 4. **Work on todo items** marking them complete as you go
517
+ 5. **Provide high-level explanations** of changes made
518
+ 6. **Keep changes simple** - impact as little code as possible
519
+ 7. **Add review section** to todo.md with summary
520
+ 8. **Make git commits** after each fully finished task
521
+
522
+ ### Quality Criteria
523
+ - **Architecture**: Follows Clean Architecture with proper layer separation
524
+ - **Localization**: All text supports multi-language
525
+ - **Quality**: Passes all 5 quality criteria (DRY, Readable, Maintainable, Performant, Testable)
526
+ - **Documentation**: Code is properly documented with examples
527
+ - **Consistency**: Code style matches existing patterns
528
+
529
+ ## 🔒 Security Guidelines
530
+
531
+ ### Input Validation
532
+ - Validate all user inputs at UI and business logic level
533
+ - Use proper form validation with error messages
534
+ - Sanitize data before API calls
535
+
536
+ ### Data Storage
537
+ - Use secure storage for sensitive data (flutter_secure_storage)
538
+ - Never store passwords in plain text
539
+ - Encrypt sensitive local data
540
+
541
+ ### Network Security
542
+ - Use HTTPS for all API calls
543
+ - Implement certificate pinning for production
544
+ - Validate SSL certificates
545
+
546
+ ### Authentication
547
+ - Implement proper token management
548
+ - Use secure token storage
549
+ - Handle token refresh properly
550
+
551
+ This guide ensures consistent, high-quality Flutter development that meets professional standards and security requirements.