appiq-solution 1.4.8 → 1.4.9

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 (737) hide show
  1. package/README.md +172 -48
  2. package/bmad-core/agent-teams/team-fullstack.yaml +1 -11
  3. package/bmad-core/agents/analyst.md +3 -7
  4. package/bmad-core/agents/architect.md +0 -6
  5. package/bmad-core/agents/dev.md +5 -24
  6. package/bmad-core/agents/pm.md +3 -7
  7. package/bmad-core/agents/qa.md +0 -17
  8. package/bmad-core/agents/sm.md +3 -8
  9. package/bmad-core/agents/ux-expert.md +3 -8
  10. package/bmad-core/data/technical-preferences.md +1 -147
  11. package/bmad-core/templates/fullstack-architecture-tmpl.yaml +5 -12
  12. package/bmad-core/workflows/brownfield-fullstack.yaml +1 -15
  13. package/bmad-core/workflows/greenfield-fullstack.yaml +5 -49
  14. package/bmad-core/working-in-the-brownfield.md +10 -19
  15. package/dist/agents/bmad-orchestrator.txt +0 -111
  16. package/dist/agents/pm.txt +2 -0
  17. package/dist/expansion-packs/bmad-2d-phaser-game-dev/teams/phaser-2d-nodejs-game-team.txt +0 -111
  18. package/dist/expansion-packs/bmad-2d-unity-game-dev/teams/unity-2d-game-team.txt +0 -111
  19. package/dist/teams/team-all.txt +2 -111
  20. package/dist/teams/team-fullstack.txt +2 -111
  21. package/dist/teams/team-ide-minimal.txt +0 -111
  22. package/dist/teams/team-no-ui.txt +2 -111
  23. package/package.json +60 -18
  24. package/tools/cli.js +3 -3
  25. package/tools/installer/package-lock.json +2 -2
  26. package/#NEW APP PROMPT/ARCHITECTURE.md +0 -279
  27. package/#NEW APP PROMPT/ARCHITECTURE_UNIFIED.md +0 -414
  28. package/#NEW APP PROMPT/accesibility_prompt.md +0 -103
  29. package/#NEW APP PROMPT/clean-code.mdc +0 -55
  30. package/#NEW APP PROMPT/codequality.mdc +0 -47
  31. package/#NEW APP PROMPT/flutter-ai-rules/LICENSE +0 -21
  32. package/#NEW APP PROMPT/flutter-ai-rules/README.md +0 -104
  33. package/#NEW APP PROMPT/flutter-ai-rules/combined/README.md +0 -25
  34. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_dart.md +0 -192
  35. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_dart__under_6K.md +0 -99
  36. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_dart_bloc_mocktail.md +0 -308
  37. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_dart_bloc_mocktail__under_6K.md +0 -87
  38. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_dart_change_notifier.md +0 -254
  39. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_dart_change_notifier__under_6K.md +0 -98
  40. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_dart_provider.md +0 -261
  41. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_dart_provider__under_6K.md +0 -105
  42. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_dart_riverpod_mockito.md +0 -371
  43. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_dart_riverpod_mockito__under_6K.md +0 -92
  44. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_with_bloc.md +0 -287
  45. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_with_bloc__under_6K.md +0 -68
  46. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_with_riverpod.md +0 -375
  47. package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_with_riverpod__under_6K.md +0 -106
  48. package/#NEW APP PROMPT/flutter-ai-rules/media/flutter_ai_rules.png +0 -0
  49. package/#NEW APP PROMPT/flutter-ai-rules/media/mocktail_md_01.png +0 -0
  50. package/#NEW APP PROMPT/flutter-ai-rules/media/mocktail_md_02.png +0 -0
  51. package/#NEW APP PROMPT/flutter-ai-rules/rules/bloc.md +0 -94
  52. package/#NEW APP PROMPT/flutter-ai-rules/rules/dart_3_updates.md +0 -93
  53. package/#NEW APP PROMPT/flutter-ai-rules/rules/effective_dart.md +0 -105
  54. package/#NEW APP PROMPT/flutter-ai-rules/rules/flutter_app_architecture.md +0 -57
  55. package/#NEW APP PROMPT/flutter-ai-rules/rules/flutter_change_notifier.md +0 -62
  56. package/#NEW APP PROMPT/flutter-ai-rules/rules/flutter_errors.md +0 -11
  57. package/#NEW APP PROMPT/flutter-ai-rules/rules/mockito.md +0 -31
  58. package/#NEW APP PROMPT/flutter-ai-rules/rules/mocktail.md +0 -24
  59. package/#NEW APP PROMPT/flutter-ai-rules/rules/provider.md +0 -69
  60. package/#NEW APP PROMPT/flutter-ai-rules/rules/riverpod.md +0 -188
  61. package/#NEW APP PROMPT/generate ssh.md +0 -4
  62. package/#NEW APP PROMPT/project_ai_prompt.md +0 -544
  63. package/#Tools/APPIQ-METHOD/.bmad-config.json +0 -13
  64. package/#Tools/APPIQ-METHOD/.cursor/commands/analyze.md +0 -27
  65. package/#Tools/APPIQ-METHOD/.cursor/commands/appiq.md +0 -27
  66. package/#Tools/APPIQ-METHOD/.cursor/commands/help.md +0 -27
  67. package/#Tools/APPIQ-METHOD/.cursor/commands/story.md +0 -27
  68. package/#Tools/APPIQ-METHOD/DEVELOPMENT_GUIDE.md +0 -855
  69. package/#Tools/APPIQ-METHOD/NPM-README.md +0 -138
  70. package/#Tools/APPIQ-METHOD/README.md +0 -107
  71. package/#Tools/APPIQ-METHOD/SMART_WORKFLOW_GUIDE.md +0 -401
  72. package/#Tools/APPIQ-METHOD/activate-appiq.js +0 -81
  73. package/#Tools/APPIQ-METHOD/appiq-solution/README.md +0 -226
  74. package/#Tools/APPIQ-METHOD/bmad-core/agent-teams/team-all.yaml +0 -14
  75. package/#Tools/APPIQ-METHOD/bmad-core/agent-teams/team-flutter-mobile.yaml +0 -114
  76. package/#Tools/APPIQ-METHOD/bmad-core/agent-teams/team-fullstack.yaml +0 -28
  77. package/#Tools/APPIQ-METHOD/bmad-core/agent-teams/team-ide-minimal.yaml +0 -10
  78. package/#Tools/APPIQ-METHOD/bmad-core/agent-teams/team-no-ui.yaml +0 -13
  79. package/#Tools/APPIQ-METHOD/bmad-core/agents/analyst.md +0 -85
  80. package/#Tools/APPIQ-METHOD/bmad-core/agents/architect.md +0 -90
  81. package/#Tools/APPIQ-METHOD/bmad-core/agents/bmad-master.md +0 -108
  82. package/#Tools/APPIQ-METHOD/bmad-core/agents/bmad-orchestrator.md +0 -150
  83. package/#Tools/APPIQ-METHOD/bmad-core/agents/bmad-smart-launcher.md +0 -170
  84. package/#Tools/APPIQ-METHOD/bmad-core/agents/dev.md +0 -95
  85. package/#Tools/APPIQ-METHOD/bmad-core/agents/init-flow-po.md +0 -143
  86. package/#Tools/APPIQ-METHOD/bmad-core/agents/pm.md +0 -85
  87. package/#Tools/APPIQ-METHOD/bmad-core/agents/po.md +0 -76
  88. package/#Tools/APPIQ-METHOD/bmad-core/agents/qa.md +0 -86
  89. package/#Tools/APPIQ-METHOD/bmad-core/agents/sm.md +0 -67
  90. package/#Tools/APPIQ-METHOD/bmad-core/agents/ux-expert.md +0 -71
  91. package/#Tools/APPIQ-METHOD/bmad-core/bmad-core/user-guide.md +0 -0
  92. package/#Tools/APPIQ-METHOD/bmad-core/checklists/architect-checklist.md +0 -443
  93. package/#Tools/APPIQ-METHOD/bmad-core/checklists/change-checklist.md +0 -182
  94. package/#Tools/APPIQ-METHOD/bmad-core/checklists/pm-checklist.md +0 -375
  95. package/#Tools/APPIQ-METHOD/bmad-core/checklists/po-master-checklist.md +0 -441
  96. package/#Tools/APPIQ-METHOD/bmad-core/checklists/security-validation-checklist.md +0 -332
  97. package/#Tools/APPIQ-METHOD/bmad-core/checklists/story-dod-checklist.md +0 -101
  98. package/#Tools/APPIQ-METHOD/bmad-core/checklists/story-draft-checklist.md +0 -156
  99. package/#Tools/APPIQ-METHOD/bmad-core/core-config.yaml +0 -20
  100. package/#Tools/APPIQ-METHOD/bmad-core/core-config.yaml.bak +0 -20
  101. package/#Tools/APPIQ-METHOD/bmad-core/data/backend-services-integration.md +0 -686
  102. package/#Tools/APPIQ-METHOD/bmad-core/data/bmad-kb.md +0 -803
  103. package/#Tools/APPIQ-METHOD/bmad-core/data/brainstorming-techniques.md +0 -36
  104. package/#Tools/APPIQ-METHOD/bmad-core/data/elicitation-methods.md +0 -134
  105. package/#Tools/APPIQ-METHOD/bmad-core/data/shadcn-ui-integration.md +0 -388
  106. package/#Tools/APPIQ-METHOD/bmad-core/data/technical-preferences.md +0 -149
  107. package/#Tools/APPIQ-METHOD/bmad-core/enhanced-ide-development-workflow.md +0 -43
  108. package/#Tools/APPIQ-METHOD/bmad-core/tasks/advanced-elicitation.md +0 -117
  109. package/#Tools/APPIQ-METHOD/bmad-core/tasks/brownfield-create-epic.md +0 -160
  110. package/#Tools/APPIQ-METHOD/bmad-core/tasks/brownfield-create-story.md +0 -147
  111. package/#Tools/APPIQ-METHOD/bmad-core/tasks/correct-course.md +0 -70
  112. package/#Tools/APPIQ-METHOD/bmad-core/tasks/create-brownfield-story.md +0 -304
  113. package/#Tools/APPIQ-METHOD/bmad-core/tasks/create-deep-research-prompt.md +0 -289
  114. package/#Tools/APPIQ-METHOD/bmad-core/tasks/create-flutter-story.md +0 -197
  115. package/#Tools/APPIQ-METHOD/bmad-core/tasks/create-next-story.md +0 -112
  116. package/#Tools/APPIQ-METHOD/bmad-core/tasks/document-project.md +0 -341
  117. package/#Tools/APPIQ-METHOD/bmad-core/tasks/facilitate-brainstorming-session.md +0 -136
  118. package/#Tools/APPIQ-METHOD/bmad-core/tasks/generate-ai-frontend-prompt.md +0 -51
  119. package/#Tools/APPIQ-METHOD/bmad-core/tasks/index-docs.md +0 -179
  120. package/#Tools/APPIQ-METHOD/bmad-core/tasks/intelligent-epic-creation.md +0 -234
  121. package/#Tools/APPIQ-METHOD/bmad-core/tasks/kb-mode-interaction.md +0 -75
  122. package/#Tools/APPIQ-METHOD/bmad-core/tasks/review-story.md +0 -145
  123. package/#Tools/APPIQ-METHOD/bmad-core/tasks/shard-doc.md +0 -187
  124. package/#Tools/APPIQ-METHOD/bmad-core/tasks/smart-project-analysis.md +0 -289
  125. package/#Tools/APPIQ-METHOD/bmad-core/tasks/validate-next-story.md +0 -134
  126. package/#Tools/APPIQ-METHOD/bmad-core/templates/architecture-tmpl.yaml +0 -650
  127. package/#Tools/APPIQ-METHOD/bmad-core/templates/brainstorming-output-tmpl.yaml +0 -156
  128. package/#Tools/APPIQ-METHOD/bmad-core/templates/brownfield-architecture-tmpl.yaml +0 -476
  129. package/#Tools/APPIQ-METHOD/bmad-core/templates/brownfield-prd-tmpl.yaml +0 -280
  130. package/#Tools/APPIQ-METHOD/bmad-core/templates/competitor-analysis-tmpl.yaml +0 -293
  131. package/#Tools/APPIQ-METHOD/bmad-core/templates/flutter-mobile-prd-tmpl.yaml +0 -330
  132. package/#Tools/APPIQ-METHOD/bmad-core/templates/flutter-story-tmpl.yaml +0 -376
  133. package/#Tools/APPIQ-METHOD/bmad-core/templates/flutter-ui-spec-tmpl.yaml +0 -415
  134. package/#Tools/APPIQ-METHOD/bmad-core/templates/front-end-architecture-tmpl.yaml +0 -206
  135. package/#Tools/APPIQ-METHOD/bmad-core/templates/front-end-spec-tmpl.yaml +0 -349
  136. package/#Tools/APPIQ-METHOD/bmad-core/templates/fullstack-architecture-tmpl.yaml +0 -812
  137. package/#Tools/APPIQ-METHOD/bmad-core/templates/market-research-tmpl.yaml +0 -252
  138. package/#Tools/APPIQ-METHOD/bmad-core/templates/prd-tmpl.yaml +0 -202
  139. package/#Tools/APPIQ-METHOD/bmad-core/templates/project-brief-tmpl.yaml +0 -221
  140. package/#Tools/APPIQ-METHOD/bmad-core/templates/story-tmpl.yaml +0 -137
  141. package/#Tools/APPIQ-METHOD/bmad-core/user-guide.md +0 -251
  142. package/#Tools/APPIQ-METHOD/bmad-core/workflows/brownfield-fullstack.yaml +0 -311
  143. package/#Tools/APPIQ-METHOD/bmad-core/workflows/brownfield-service.yaml +0 -187
  144. package/#Tools/APPIQ-METHOD/bmad-core/workflows/brownfield-ui.yaml +0 -197
  145. package/#Tools/APPIQ-METHOD/bmad-core/workflows/greenfield-fullstack.yaml +0 -284
  146. package/#Tools/APPIQ-METHOD/bmad-core/workflows/greenfield-service.yaml +0 -206
  147. package/#Tools/APPIQ-METHOD/bmad-core/workflows/greenfield-ui.yaml +0 -235
  148. package/#Tools/APPIQ-METHOD/bmad-core/working-in-the-brownfield.md +0 -373
  149. package/#Tools/APPIQ-METHOD/commands/README.md +0 -28
  150. package/#Tools/APPIQ-METHOD/commands/analyze.md +0 -27
  151. package/#Tools/APPIQ-METHOD/commands/appiq.md +0 -27
  152. package/#Tools/APPIQ-METHOD/commands/help.md +0 -27
  153. package/#Tools/APPIQ-METHOD/commands/story.md +0 -27
  154. package/#Tools/APPIQ-METHOD/dist/agents/analyst.txt +0 -2882
  155. package/#Tools/APPIQ-METHOD/dist/agents/architect.txt +0 -3543
  156. package/#Tools/APPIQ-METHOD/dist/agents/bmad-master.txt +0 -8756
  157. package/#Tools/APPIQ-METHOD/dist/agents/bmad-orchestrator.txt +0 -1490
  158. package/#Tools/APPIQ-METHOD/dist/agents/dev.txt +0 -428
  159. package/#Tools/APPIQ-METHOD/dist/agents/pm.txt +0 -2229
  160. package/#Tools/APPIQ-METHOD/dist/agents/po.txt +0 -1364
  161. package/#Tools/APPIQ-METHOD/dist/agents/qa.txt +0 -386
  162. package/#Tools/APPIQ-METHOD/dist/agents/sm.txt +0 -668
  163. package/#Tools/APPIQ-METHOD/dist/agents/ux-expert.txt +0 -701
  164. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-designer.txt +0 -2408
  165. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-developer.txt +0 -1631
  166. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-sm.txt +0 -822
  167. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-2d-phaser-game-dev/teams/phaser-2d-nodejs-game-team.txt +0 -10989
  168. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-architect.txt +0 -4047
  169. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-designer.txt +0 -3744
  170. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-developer.txt +0 -465
  171. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-sm.txt +0 -990
  172. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-2d-unity-game-dev/teams/unity-2d-game-team.txt +0 -15467
  173. package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-infrastructure-devops/agents/infra-devops-platform.txt +0 -2077
  174. package/#Tools/APPIQ-METHOD/dist/teams/team-all.txt +0 -11062
  175. package/#Tools/APPIQ-METHOD/dist/teams/team-fullstack.txt +0 -10392
  176. package/#Tools/APPIQ-METHOD/dist/teams/team-ide-minimal.txt +0 -3507
  177. package/#Tools/APPIQ-METHOD/dist/teams/team-no-ui.txt +0 -8951
  178. package/#Tools/APPIQ-METHOD/install-appiq.sh +0 -41
  179. package/#Tools/APPIQ-METHOD/package-lock.json +0 -631
  180. package/#Tools/APPIQ-METHOD/package.json +0 -44
  181. package/#Tools/APPIQ-METHOD/tasks/todo.md +0 -275
  182. package/#Tools/APPIQ-METHOD/tools/appiq-installer.js +0 -2711
  183. package/#Tools/APPIQ-METHOD/tools/bmad-npx-wrapper.js +0 -39
  184. package/#Tools/APPIQ-METHOD/tools/builders/web-builder.js +0 -681
  185. package/#Tools/APPIQ-METHOD/tools/bump-all-versions.js +0 -106
  186. package/#Tools/APPIQ-METHOD/tools/bump-expansion-version.js +0 -83
  187. package/#Tools/APPIQ-METHOD/tools/cli.js +0 -152
  188. package/#Tools/APPIQ-METHOD/tools/epic-solution-installer.js +0 -536
  189. package/#Tools/APPIQ-METHOD/tools/flattener/main.js +0 -570
  190. package/#Tools/APPIQ-METHOD/tools/installer/README.md +0 -8
  191. package/#Tools/APPIQ-METHOD/tools/installer/bin/bmad.js +0 -483
  192. package/#Tools/APPIQ-METHOD/tools/installer/config/ide-agent-config.yaml +0 -58
  193. package/#Tools/APPIQ-METHOD/tools/installer/config/install.config.yaml +0 -92
  194. package/#Tools/APPIQ-METHOD/tools/installer/lib/config-loader.js +0 -253
  195. package/#Tools/APPIQ-METHOD/tools/installer/lib/file-manager.js +0 -411
  196. package/#Tools/APPIQ-METHOD/tools/installer/lib/ide-base-setup.js +0 -227
  197. package/#Tools/APPIQ-METHOD/tools/installer/lib/ide-setup.js +0 -1096
  198. package/#Tools/APPIQ-METHOD/tools/installer/lib/installer.js +0 -1772
  199. package/#Tools/APPIQ-METHOD/tools/installer/lib/memory-profiler.js +0 -224
  200. package/#Tools/APPIQ-METHOD/tools/installer/lib/module-manager.js +0 -110
  201. package/#Tools/APPIQ-METHOD/tools/installer/lib/resource-locator.js +0 -310
  202. package/#Tools/APPIQ-METHOD/tools/installer/package-lock.json +0 -906
  203. package/#Tools/APPIQ-METHOD/tools/installer/package.json +0 -43
  204. package/#Tools/APPIQ-METHOD/tools/lib/dependency-resolver.js +0 -179
  205. package/#Tools/APPIQ-METHOD/tools/lib/yaml-utils.js +0 -29
  206. package/#Tools/APPIQ-METHOD/tools/md-assets/web-agent-startup-instructions.md +0 -39
  207. package/#Tools/APPIQ-METHOD/tools/semantic-release-sync-installer.js +0 -30
  208. package/#Tools/APPIQ-METHOD/tools/setup-ide-commands.js +0 -348
  209. package/#Tools/APPIQ-METHOD/tools/smart-installer.js +0 -592
  210. package/#Tools/APPIQ-METHOD/tools/sync-installer-version.js +0 -34
  211. package/#Tools/APPIQ-METHOD/tools/update-expansion-version.js +0 -54
  212. package/#Tools/APPIQ-METHOD/tools/upgraders/v3-to-v4-upgrader.js +0 -763
  213. package/#Tools/APPIQ-METHOD/tools/version-bump.js +0 -79
  214. package/#Tools/APPIQ-METHOD/tools/yaml-format.js +0 -240
  215. package/#Tools/SkyReels-V2/.pre-commit-config.yaml +0 -25
  216. package/#Tools/SkyReels-V2/LICENSE.txt +0 -38
  217. package/#Tools/SkyReels-V2/README.md +0 -766
  218. package/#Tools/SkyReels-V2/generate_video.py +0 -161
  219. package/#Tools/SkyReels-V2/generate_video_df.py +0 -220
  220. package/#Tools/SkyReels-V2/requirements.txt +0 -16
  221. package/#Tools/SkyReels-V2/skycaptioner_v1/README.md +0 -278
  222. package/#Tools/SkyReels-V2/skycaptioner_v1/examples/test.csv +0 -5
  223. package/#Tools/SkyReels-V2/skycaptioner_v1/examples/test_result.csv +0 -5
  224. package/#Tools/SkyReels-V2/skycaptioner_v1/infer_fusion_caption.sh +0 -9
  225. package/#Tools/SkyReels-V2/skycaptioner_v1/infer_struct_caption.sh +0 -8
  226. package/#Tools/SkyReels-V2/skycaptioner_v1/requirements.txt +0 -3
  227. package/#Tools/SkyReels-V2/skycaptioner_v1/scripts/gradio_fusion_caption.py +0 -146
  228. package/#Tools/SkyReels-V2/skycaptioner_v1/scripts/gradio_struct_caption.py +0 -92
  229. package/#Tools/SkyReels-V2/skycaptioner_v1/scripts/utils.py +0 -19
  230. package/#Tools/SkyReels-V2/skycaptioner_v1/scripts/vllm_fusion_caption.py +0 -256
  231. package/#Tools/SkyReels-V2/skycaptioner_v1/scripts/vllm_struct_caption.py +0 -156
  232. package/#Tools/SkyReels-V2/skyreels_v2_infer/__init__.py +0 -1
  233. package/#Tools/SkyReels-V2/skyreels_v2_infer/distributed/__init__.py +0 -0
  234. package/#Tools/SkyReels-V2/skyreels_v2_infer/distributed/xdit_context_parallel.py +0 -286
  235. package/#Tools/SkyReels-V2/skyreels_v2_infer/modules/__init__.py +0 -69
  236. package/#Tools/SkyReels-V2/skyreels_v2_infer/modules/attention.py +0 -179
  237. package/#Tools/SkyReels-V2/skyreels_v2_infer/modules/clip.py +0 -525
  238. package/#Tools/SkyReels-V2/skyreels_v2_infer/modules/t5.py +0 -454
  239. package/#Tools/SkyReels-V2/skyreels_v2_infer/modules/tokenizers.py +0 -78
  240. package/#Tools/SkyReels-V2/skyreels_v2_infer/modules/transformer.py +0 -839
  241. package/#Tools/SkyReels-V2/skyreels_v2_infer/modules/vae.py +0 -639
  242. package/#Tools/SkyReels-V2/skyreels_v2_infer/modules/xlm_roberta.py +0 -165
  243. package/#Tools/SkyReels-V2/skyreels_v2_infer/pipelines/__init__.py +0 -5
  244. package/#Tools/SkyReels-V2/skyreels_v2_infer/pipelines/diffusion_forcing_pipeline.py +0 -659
  245. package/#Tools/SkyReels-V2/skyreels_v2_infer/pipelines/image2video_pipeline.py +0 -156
  246. package/#Tools/SkyReels-V2/skyreels_v2_infer/pipelines/prompt_enhancer.py +0 -65
  247. package/#Tools/SkyReels-V2/skyreels_v2_infer/pipelines/text2video_pipeline.py +0 -110
  248. package/#Tools/SkyReels-V2/skyreels_v2_infer/scheduler/__init__.py +0 -0
  249. package/#Tools/SkyReels-V2/skyreels_v2_infer/scheduler/fm_solvers_unipc.py +0 -759
  250. package/#Tools/SuperClaude/.claude/commands/analyze.md +0 -36
  251. package/#Tools/SuperClaude/.claude/commands/build.md +0 -35
  252. package/#Tools/SuperClaude/.claude/commands/cleanup.md +0 -46
  253. package/#Tools/SuperClaude/.claude/commands/deploy.md +0 -55
  254. package/#Tools/SuperClaude/.claude/commands/design.md +0 -91
  255. package/#Tools/SuperClaude/.claude/commands/dev-setup.md +0 -37
  256. package/#Tools/SuperClaude/.claude/commands/document.md +0 -99
  257. package/#Tools/SuperClaude/.claude/commands/estimate.md +0 -69
  258. package/#Tools/SuperClaude/.claude/commands/explain.md +0 -85
  259. package/#Tools/SuperClaude/.claude/commands/git.md +0 -47
  260. package/#Tools/SuperClaude/.claude/commands/improve.md +0 -162
  261. package/#Tools/SuperClaude/.claude/commands/index.md +0 -159
  262. package/#Tools/SuperClaude/.claude/commands/load.md +0 -65
  263. package/#Tools/SuperClaude/.claude/commands/migrate.md +0 -76
  264. package/#Tools/SuperClaude/.claude/commands/scan.md +0 -163
  265. package/#Tools/SuperClaude/.claude/commands/shared/ambiguity-check.yml +0 -40
  266. package/#Tools/SuperClaude/.claude/commands/shared/audit.yml +0 -21
  267. package/#Tools/SuperClaude/.claude/commands/shared/checkpoint.yml +0 -28
  268. package/#Tools/SuperClaude/.claude/commands/shared/cleanup-patterns.yml +0 -107
  269. package/#Tools/SuperClaude/.claude/commands/shared/command-memory.yml +0 -52
  270. package/#Tools/SuperClaude/.claude/commands/shared/command-templates.yml +0 -167
  271. package/#Tools/SuperClaude/.claude/commands/shared/config-validator.yml +0 -206
  272. package/#Tools/SuperClaude/.claude/commands/shared/constants.yml +0 -311
  273. package/#Tools/SuperClaude/.claude/commands/shared/documentation-dirs.yml +0 -134
  274. package/#Tools/SuperClaude/.claude/commands/shared/error-handling.yml +0 -341
  275. package/#Tools/SuperClaude/.claude/commands/shared/evidence.yml +0 -75
  276. package/#Tools/SuperClaude/.claude/commands/shared/execution-lifecycle.yml +0 -277
  277. package/#Tools/SuperClaude/.claude/commands/shared/git-operations.yml +0 -217
  278. package/#Tools/SuperClaude/.claude/commands/shared/git-workflow.yml +0 -37
  279. package/#Tools/SuperClaude/.claude/commands/shared/implementation.yml +0 -199
  280. package/#Tools/SuperClaude/.claude/commands/shared/loading-config.yml +0 -73
  281. package/#Tools/SuperClaude/.claude/commands/shared/mcp-flags.yml +0 -109
  282. package/#Tools/SuperClaude/.claude/commands/shared/migration-report.md +0 -165
  283. package/#Tools/SuperClaude/.claude/commands/shared/patterns.yml +0 -155
  284. package/#Tools/SuperClaude/.claude/commands/shared/performance.yml +0 -317
  285. package/#Tools/SuperClaude/.claude/commands/shared/planning-mode.yml +0 -51
  286. package/#Tools/SuperClaude/.claude/commands/shared/research-first.yml +0 -278
  287. package/#Tools/SuperClaude/.claude/commands/shared/session-recovery.yml +0 -144
  288. package/#Tools/SuperClaude/.claude/commands/shared/severity-levels.yml +0 -252
  289. package/#Tools/SuperClaude/.claude/commands/shared/task-system.yml +0 -380
  290. package/#Tools/SuperClaude/.claude/commands/shared/task-ultracompressed.yml +0 -88
  291. package/#Tools/SuperClaude/.claude/commands/shared/templates/feature-template.md +0 -59
  292. package/#Tools/SuperClaude/.claude/commands/shared/templates/task-ultracompressed.md +0 -26
  293. package/#Tools/SuperClaude/.claude/commands/shared/thinking-modes.yml +0 -61
  294. package/#Tools/SuperClaude/.claude/commands/shared/ultracompressed.yml +0 -97
  295. package/#Tools/SuperClaude/.claude/commands/shared/user-experience.yml +0 -208
  296. package/#Tools/SuperClaude/.claude/commands/shared/validation.yml +0 -54
  297. package/#Tools/SuperClaude/.claude/commands/shared/workflow-chains.yml +0 -138
  298. package/#Tools/SuperClaude/.claude/commands/spawn.md +0 -106
  299. package/#Tools/SuperClaude/.claude/commands/task.md +0 -110
  300. package/#Tools/SuperClaude/.claude/commands/test.md +0 -67
  301. package/#Tools/SuperClaude/.claude/commands/troubleshoot.md +0 -93
  302. package/#Tools/SuperClaude/.github/ISSUE_TEMPLATE/bug_report.yml +0 -114
  303. package/#Tools/SuperClaude/.github/ISSUE_TEMPLATE/feature_request.yml +0 -119
  304. package/#Tools/SuperClaude/.github/ISSUE_TEMPLATE/question.yml +0 -87
  305. package/#Tools/SuperClaude/.github/pull_request_template.md +0 -62
  306. package/#Tools/SuperClaude/CHANGELOG.md +0 -109
  307. package/#Tools/SuperClaude/CLAUDE.md +0 -95
  308. package/#Tools/SuperClaude/CODE_OF_CONDUCT.md +0 -45
  309. package/#Tools/SuperClaude/CONTRIBUTING.md +0 -225
  310. package/#Tools/SuperClaude/Commands_Cheat_Sheet.md +0 -160
  311. package/#Tools/SuperClaude/LICENSE +0 -21
  312. package/#Tools/SuperClaude/MCP.md +0 -117
  313. package/#Tools/SuperClaude/PERSONAS.md +0 -115
  314. package/#Tools/SuperClaude/README.md +0 -249
  315. package/#Tools/SuperClaude/RULES.md +0 -220
  316. package/#Tools/SuperClaude/SECURITY.md +0 -91
  317. package/#Tools/SuperClaude/install.sh +0 -296
  318. package/#Tools/claude-talk-to-figma-mcp/.github/workflows/test.yml +0 -36
  319. package/#Tools/claude-talk-to-figma-mcp/CHANGELOG.md +0 -88
  320. package/#Tools/claude-talk-to-figma-mcp/Dockerfile +0 -16
  321. package/#Tools/claude-talk-to-figma-mcp/LICENSE +0 -22
  322. package/#Tools/claude-talk-to-figma-mcp/TESTING.md +0 -216
  323. package/#Tools/claude-talk-to-figma-mcp/bun.lock +0 -964
  324. package/#Tools/claude-talk-to-figma-mcp/context/01/00-analisis.md +0 -151
  325. package/#Tools/claude-talk-to-figma-mcp/context/01/01-tools-refactor.md +0 -370
  326. package/#Tools/claude-talk-to-figma-mcp/context/01/02-tools-refactor-backlog.md +0 -253
  327. package/#Tools/claude-talk-to-figma-mcp/context/01/03-tools-refactor-test.md +0 -138
  328. package/#Tools/claude-talk-to-figma-mcp/context/01/04-tools-refactor-channel-error.md +0 -133
  329. package/#Tools/claude-talk-to-figma-mcp/context/01/04-tools-refactor-test-backlog.md +0 -0
  330. package/#Tools/claude-talk-to-figma-mcp/context/01/05-tools-refactor-four-tools-error.md +0 -356
  331. package/#Tools/claude-talk-to-figma-mcp/context/01/06-tools-refactor-four-tools-error-backlog.md +0 -425
  332. package/#Tools/claude-talk-to-figma-mcp/context/01/prompt-dev-nodejs-bun.md +0 -105
  333. package/#Tools/claude-talk-to-figma-mcp/context/01-prompt.md +0 -135
  334. package/#Tools/claude-talk-to-figma-mcp/context/02/00-analisis.md +0 -131
  335. package/#Tools/claude-talk-to-figma-mcp/context/02/01-plan.md +0 -162
  336. package/#Tools/claude-talk-to-figma-mcp/context/02/02-backlog.md +0 -241
  337. package/#Tools/claude-talk-to-figma-mcp/context/02-analisis.md +0 -202
  338. package/#Tools/claude-talk-to-figma-mcp/context/99-notas.md +0 -139
  339. package/#Tools/claude-talk-to-figma-mcp/context/pr-14/pr-14-analisis.md +0 -221
  340. package/#Tools/claude-talk-to-figma-mcp/context/pr-14/pr-14-claude-tests.md +0 -152
  341. package/#Tools/claude-talk-to-figma-mcp/context/pr-14/pr-14-npm-publishing.md +0 -272
  342. package/#Tools/claude-talk-to-figma-mcp/images/claude-talk-to-figma.png +0 -0
  343. package/#Tools/claude-talk-to-figma-mcp/images/mcp-figma-plugin-configuration.png +0 -0
  344. package/#Tools/claude-talk-to-figma-mcp/jest.config.cjs +0 -25
  345. package/#Tools/claude-talk-to-figma-mcp/package.json +0 -67
  346. package/#Tools/claude-talk-to-figma-mcp/prompts/prompt-ux-ui-especialista-es.md +0 -82
  347. package/#Tools/claude-talk-to-figma-mcp/prompts/prompt-ux-ui-especialista-gal.md +0 -80
  348. package/#Tools/claude-talk-to-figma-mcp/prompts/prompt-ux-ui-especialista-pt.md +0 -80
  349. package/#Tools/claude-talk-to-figma-mcp/prompts/prompt-ux-ui-specialist.md +0 -80
  350. package/#Tools/claude-talk-to-figma-mcp/readme.md +0 -307
  351. package/#Tools/claude-talk-to-figma-mcp/scripts/configure-claude.js +0 -90
  352. package/#Tools/claude-talk-to-figma-mcp/scripts/setup.sh +0 -30
  353. package/#Tools/claude-talk-to-figma-mcp/scripts/test-integration.js +0 -339
  354. package/#Tools/claude-talk-to-figma-mcp/smithery.yaml +0 -26
  355. package/#Tools/claude-talk-to-figma-mcp/src/claude_mcp_plugin/code.js +0 -3295
  356. package/#Tools/claude-talk-to-figma-mcp/src/claude_mcp_plugin/manifest.json +0 -24
  357. package/#Tools/claude-talk-to-figma-mcp/src/claude_mcp_plugin/setcharacters.js +0 -215
  358. package/#Tools/claude-talk-to-figma-mcp/src/claude_mcp_plugin/ui.html +0 -656
  359. package/#Tools/claude-talk-to-figma-mcp/src/socket.ts +0 -349
  360. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/bun.lock +0 -246
  361. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/config/config.ts +0 -22
  362. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/package.json +0 -31
  363. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/prompts/index.ts +0 -297
  364. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/server.ts +0 -62
  365. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/tools/component-tools.ts +0 -48
  366. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/tools/creation-tools.ts +0 -620
  367. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/tools/document-tools.ts +0 -390
  368. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/tools/index.ts +0 -28
  369. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/tools/modification-tools.ts +0 -408
  370. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/tools/text-tools.ts +0 -531
  371. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/tsconfig.json +0 -18
  372. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/types/color.ts +0 -13
  373. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/types/index.ts +0 -87
  374. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/utils/defaults.ts +0 -23
  375. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/utils/figma-helpers.ts +0 -142
  376. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/utils/logger.ts +0 -8
  377. package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/utils/websocket.ts +0 -258
  378. package/#Tools/claude-talk-to-figma-mcp/tests/fixtures/test-data.ts +0 -32
  379. package/#Tools/claude-talk-to-figma-mcp/tests/integration/set-fill-color.test.ts +0 -309
  380. package/#Tools/claude-talk-to-figma-mcp/tests/integration/set-stroke-color.test.ts +0 -387
  381. package/#Tools/claude-talk-to-figma-mcp/tests/setup.ts +0 -7
  382. package/#Tools/claude-talk-to-figma-mcp/tests/unit/utils/defaults.test.ts +0 -131
  383. package/#Tools/claude-talk-to-figma-mcp/tsconfig.json +0 -17
  384. package/#Tools/claude-talk-to-figma-mcp/tsup.config.ts +0 -14
  385. package/#Tools/jwt creator/AuthKey_MZ7UQGFV2Q.p8 +0 -6
  386. package/#Tools/jwt creator/generate_apple_jwt.js +0 -18
  387. package/#Tools/jwt creator/node_modules/.package-lock.json +0 -145
  388. package/#Tools/jwt creator/node_modules/buffer-equal-constant-time/.travis.yml +0 -4
  389. package/#Tools/jwt creator/node_modules/buffer-equal-constant-time/LICENSE.txt +0 -12
  390. package/#Tools/jwt creator/node_modules/buffer-equal-constant-time/README.md +0 -50
  391. package/#Tools/jwt creator/node_modules/buffer-equal-constant-time/index.js +0 -41
  392. package/#Tools/jwt creator/node_modules/buffer-equal-constant-time/package.json +0 -21
  393. package/#Tools/jwt creator/node_modules/buffer-equal-constant-time/test.js +0 -42
  394. package/#Tools/jwt creator/node_modules/ecdsa-sig-formatter/CODEOWNERS +0 -1
  395. package/#Tools/jwt creator/node_modules/ecdsa-sig-formatter/LICENSE +0 -201
  396. package/#Tools/jwt creator/node_modules/ecdsa-sig-formatter/README.md +0 -65
  397. package/#Tools/jwt creator/node_modules/ecdsa-sig-formatter/package.json +0 -46
  398. package/#Tools/jwt creator/node_modules/ecdsa-sig-formatter/src/ecdsa-sig-formatter.d.ts +0 -17
  399. package/#Tools/jwt creator/node_modules/ecdsa-sig-formatter/src/ecdsa-sig-formatter.js +0 -187
  400. package/#Tools/jwt creator/node_modules/ecdsa-sig-formatter/src/param-bytes-for-alg.js +0 -23
  401. package/#Tools/jwt creator/node_modules/jsonwebtoken/LICENSE +0 -21
  402. package/#Tools/jwt creator/node_modules/jsonwebtoken/README.md +0 -396
  403. package/#Tools/jwt creator/node_modules/jsonwebtoken/decode.js +0 -30
  404. package/#Tools/jwt creator/node_modules/jsonwebtoken/index.js +0 -8
  405. package/#Tools/jwt creator/node_modules/jsonwebtoken/lib/JsonWebTokenError.js +0 -14
  406. package/#Tools/jwt creator/node_modules/jsonwebtoken/lib/NotBeforeError.js +0 -13
  407. package/#Tools/jwt creator/node_modules/jsonwebtoken/lib/TokenExpiredError.js +0 -13
  408. package/#Tools/jwt creator/node_modules/jsonwebtoken/lib/asymmetricKeyDetailsSupported.js +0 -3
  409. package/#Tools/jwt creator/node_modules/jsonwebtoken/lib/psSupported.js +0 -3
  410. package/#Tools/jwt creator/node_modules/jsonwebtoken/lib/rsaPssKeyDetailsSupported.js +0 -3
  411. package/#Tools/jwt creator/node_modules/jsonwebtoken/lib/timespan.js +0 -18
  412. package/#Tools/jwt creator/node_modules/jsonwebtoken/lib/validateAsymmetricKey.js +0 -66
  413. package/#Tools/jwt creator/node_modules/jsonwebtoken/package.json +0 -71
  414. package/#Tools/jwt creator/node_modules/jsonwebtoken/sign.js +0 -253
  415. package/#Tools/jwt creator/node_modules/jsonwebtoken/verify.js +0 -263
  416. package/#Tools/jwt creator/node_modules/jwa/LICENSE +0 -17
  417. package/#Tools/jwt creator/node_modules/jwa/README.md +0 -150
  418. package/#Tools/jwt creator/node_modules/jwa/index.js +0 -266
  419. package/#Tools/jwt creator/node_modules/jwa/package.json +0 -37
  420. package/#Tools/jwt creator/node_modules/jws/CHANGELOG.md +0 -34
  421. package/#Tools/jwt creator/node_modules/jws/LICENSE +0 -17
  422. package/#Tools/jwt creator/node_modules/jws/index.js +0 -22
  423. package/#Tools/jwt creator/node_modules/jws/lib/data-stream.js +0 -55
  424. package/#Tools/jwt creator/node_modules/jws/lib/sign-stream.js +0 -78
  425. package/#Tools/jwt creator/node_modules/jws/lib/tostring.js +0 -10
  426. package/#Tools/jwt creator/node_modules/jws/lib/verify-stream.js +0 -120
  427. package/#Tools/jwt creator/node_modules/jws/package.json +0 -34
  428. package/#Tools/jwt creator/node_modules/jws/readme.md +0 -255
  429. package/#Tools/jwt creator/node_modules/lodash.includes/LICENSE +0 -47
  430. package/#Tools/jwt creator/node_modules/lodash.includes/README.md +0 -18
  431. package/#Tools/jwt creator/node_modules/lodash.includes/index.js +0 -745
  432. package/#Tools/jwt creator/node_modules/lodash.includes/package.json +0 -17
  433. package/#Tools/jwt creator/node_modules/lodash.isboolean/LICENSE +0 -22
  434. package/#Tools/jwt creator/node_modules/lodash.isboolean/README.md +0 -18
  435. package/#Tools/jwt creator/node_modules/lodash.isboolean/index.js +0 -70
  436. package/#Tools/jwt creator/node_modules/lodash.isboolean/package.json +0 -17
  437. package/#Tools/jwt creator/node_modules/lodash.isinteger/LICENSE +0 -47
  438. package/#Tools/jwt creator/node_modules/lodash.isinteger/README.md +0 -18
  439. package/#Tools/jwt creator/node_modules/lodash.isinteger/index.js +0 -265
  440. package/#Tools/jwt creator/node_modules/lodash.isinteger/package.json +0 -17
  441. package/#Tools/jwt creator/node_modules/lodash.isnumber/LICENSE +0 -22
  442. package/#Tools/jwt creator/node_modules/lodash.isnumber/README.md +0 -18
  443. package/#Tools/jwt creator/node_modules/lodash.isnumber/index.js +0 -79
  444. package/#Tools/jwt creator/node_modules/lodash.isnumber/package.json +0 -17
  445. package/#Tools/jwt creator/node_modules/lodash.isplainobject/LICENSE +0 -47
  446. package/#Tools/jwt creator/node_modules/lodash.isplainobject/README.md +0 -18
  447. package/#Tools/jwt creator/node_modules/lodash.isplainobject/index.js +0 -139
  448. package/#Tools/jwt creator/node_modules/lodash.isplainobject/package.json +0 -17
  449. package/#Tools/jwt creator/node_modules/lodash.isstring/LICENSE +0 -22
  450. package/#Tools/jwt creator/node_modules/lodash.isstring/README.md +0 -18
  451. package/#Tools/jwt creator/node_modules/lodash.isstring/index.js +0 -95
  452. package/#Tools/jwt creator/node_modules/lodash.isstring/package.json +0 -17
  453. package/#Tools/jwt creator/node_modules/lodash.once/LICENSE +0 -47
  454. package/#Tools/jwt creator/node_modules/lodash.once/README.md +0 -18
  455. package/#Tools/jwt creator/node_modules/lodash.once/index.js +0 -294
  456. package/#Tools/jwt creator/node_modules/lodash.once/package.json +0 -17
  457. package/#Tools/jwt creator/node_modules/ms/index.js +0 -162
  458. package/#Tools/jwt creator/node_modules/ms/license.md +0 -21
  459. package/#Tools/jwt creator/node_modules/ms/package.json +0 -38
  460. package/#Tools/jwt creator/node_modules/ms/readme.md +0 -59
  461. package/#Tools/jwt creator/node_modules/safe-buffer/LICENSE +0 -21
  462. package/#Tools/jwt creator/node_modules/safe-buffer/README.md +0 -584
  463. package/#Tools/jwt creator/node_modules/safe-buffer/index.d.ts +0 -187
  464. package/#Tools/jwt creator/node_modules/safe-buffer/index.js +0 -65
  465. package/#Tools/jwt creator/node_modules/safe-buffer/package.json +0 -51
  466. package/#Tools/jwt creator/node_modules/semver/LICENSE +0 -15
  467. package/#Tools/jwt creator/node_modules/semver/README.md +0 -664
  468. package/#Tools/jwt creator/node_modules/semver/bin/semver.js +0 -191
  469. package/#Tools/jwt creator/node_modules/semver/classes/comparator.js +0 -143
  470. package/#Tools/jwt creator/node_modules/semver/classes/index.js +0 -7
  471. package/#Tools/jwt creator/node_modules/semver/classes/range.js +0 -556
  472. package/#Tools/jwt creator/node_modules/semver/classes/semver.js +0 -319
  473. package/#Tools/jwt creator/node_modules/semver/functions/clean.js +0 -8
  474. package/#Tools/jwt creator/node_modules/semver/functions/cmp.js +0 -54
  475. package/#Tools/jwt creator/node_modules/semver/functions/coerce.js +0 -62
  476. package/#Tools/jwt creator/node_modules/semver/functions/compare-build.js +0 -9
  477. package/#Tools/jwt creator/node_modules/semver/functions/compare-loose.js +0 -5
  478. package/#Tools/jwt creator/node_modules/semver/functions/compare.js +0 -7
  479. package/#Tools/jwt creator/node_modules/semver/functions/diff.js +0 -60
  480. package/#Tools/jwt creator/node_modules/semver/functions/eq.js +0 -5
  481. package/#Tools/jwt creator/node_modules/semver/functions/gt.js +0 -5
  482. package/#Tools/jwt creator/node_modules/semver/functions/gte.js +0 -5
  483. package/#Tools/jwt creator/node_modules/semver/functions/inc.js +0 -21
  484. package/#Tools/jwt creator/node_modules/semver/functions/lt.js +0 -5
  485. package/#Tools/jwt creator/node_modules/semver/functions/lte.js +0 -5
  486. package/#Tools/jwt creator/node_modules/semver/functions/major.js +0 -5
  487. package/#Tools/jwt creator/node_modules/semver/functions/minor.js +0 -5
  488. package/#Tools/jwt creator/node_modules/semver/functions/neq.js +0 -5
  489. package/#Tools/jwt creator/node_modules/semver/functions/parse.js +0 -18
  490. package/#Tools/jwt creator/node_modules/semver/functions/patch.js +0 -5
  491. package/#Tools/jwt creator/node_modules/semver/functions/prerelease.js +0 -8
  492. package/#Tools/jwt creator/node_modules/semver/functions/rcompare.js +0 -5
  493. package/#Tools/jwt creator/node_modules/semver/functions/rsort.js +0 -5
  494. package/#Tools/jwt creator/node_modules/semver/functions/satisfies.js +0 -12
  495. package/#Tools/jwt creator/node_modules/semver/functions/sort.js +0 -5
  496. package/#Tools/jwt creator/node_modules/semver/functions/valid.js +0 -8
  497. package/#Tools/jwt creator/node_modules/semver/index.js +0 -91
  498. package/#Tools/jwt creator/node_modules/semver/internal/constants.js +0 -37
  499. package/#Tools/jwt creator/node_modules/semver/internal/debug.js +0 -11
  500. package/#Tools/jwt creator/node_modules/semver/internal/identifiers.js +0 -25
  501. package/#Tools/jwt creator/node_modules/semver/internal/lrucache.js +0 -42
  502. package/#Tools/jwt creator/node_modules/semver/internal/parse-options.js +0 -17
  503. package/#Tools/jwt creator/node_modules/semver/internal/re.js +0 -223
  504. package/#Tools/jwt creator/node_modules/semver/package.json +0 -78
  505. package/#Tools/jwt creator/node_modules/semver/preload.js +0 -4
  506. package/#Tools/jwt creator/node_modules/semver/range.bnf +0 -16
  507. package/#Tools/jwt creator/node_modules/semver/ranges/gtr.js +0 -6
  508. package/#Tools/jwt creator/node_modules/semver/ranges/intersects.js +0 -9
  509. package/#Tools/jwt creator/node_modules/semver/ranges/ltr.js +0 -6
  510. package/#Tools/jwt creator/node_modules/semver/ranges/max-satisfying.js +0 -27
  511. package/#Tools/jwt creator/node_modules/semver/ranges/min-satisfying.js +0 -26
  512. package/#Tools/jwt creator/node_modules/semver/ranges/min-version.js +0 -63
  513. package/#Tools/jwt creator/node_modules/semver/ranges/outside.js +0 -82
  514. package/#Tools/jwt creator/node_modules/semver/ranges/simplify.js +0 -49
  515. package/#Tools/jwt creator/node_modules/semver/ranges/subset.js +0 -249
  516. package/#Tools/jwt creator/node_modules/semver/ranges/to-comparators.js +0 -10
  517. package/#Tools/jwt creator/node_modules/semver/ranges/valid.js +0 -13
  518. package/#Tools/jwt creator/package-lock.json +0 -150
  519. package/#Tools/jwt creator/package.json +0 -5
  520. package/#Tools/package.json +0 -94
  521. package/SuperClaude/.claude/commands/analyze.md +0 -36
  522. package/SuperClaude/.claude/commands/build.md +0 -35
  523. package/SuperClaude/.claude/commands/cleanup.md +0 -46
  524. package/SuperClaude/.claude/commands/deploy.md +0 -55
  525. package/SuperClaude/.claude/commands/design.md +0 -91
  526. package/SuperClaude/.claude/commands/dev-setup.md +0 -37
  527. package/SuperClaude/.claude/commands/document.md +0 -99
  528. package/SuperClaude/.claude/commands/estimate.md +0 -69
  529. package/SuperClaude/.claude/commands/explain.md +0 -85
  530. package/SuperClaude/.claude/commands/git.md +0 -47
  531. package/SuperClaude/.claude/commands/improve.md +0 -162
  532. package/SuperClaude/.claude/commands/index.md +0 -159
  533. package/SuperClaude/.claude/commands/load.md +0 -65
  534. package/SuperClaude/.claude/commands/migrate.md +0 -76
  535. package/SuperClaude/.claude/commands/scan.md +0 -163
  536. package/SuperClaude/.claude/commands/shared/ambiguity-check.yml +0 -40
  537. package/SuperClaude/.claude/commands/shared/audit.yml +0 -21
  538. package/SuperClaude/.claude/commands/shared/checkpoint.yml +0 -28
  539. package/SuperClaude/.claude/commands/shared/cleanup-patterns.yml +0 -107
  540. package/SuperClaude/.claude/commands/shared/command-memory.yml +0 -52
  541. package/SuperClaude/.claude/commands/shared/command-templates.yml +0 -167
  542. package/SuperClaude/.claude/commands/shared/config-validator.yml +0 -206
  543. package/SuperClaude/.claude/commands/shared/constants.yml +0 -311
  544. package/SuperClaude/.claude/commands/shared/documentation-dirs.yml +0 -134
  545. package/SuperClaude/.claude/commands/shared/error-handling.yml +0 -341
  546. package/SuperClaude/.claude/commands/shared/evidence.yml +0 -75
  547. package/SuperClaude/.claude/commands/shared/execution-lifecycle.yml +0 -277
  548. package/SuperClaude/.claude/commands/shared/git-operations.yml +0 -217
  549. package/SuperClaude/.claude/commands/shared/git-workflow.yml +0 -37
  550. package/SuperClaude/.claude/commands/shared/implementation.yml +0 -199
  551. package/SuperClaude/.claude/commands/shared/loading-config.yml +0 -73
  552. package/SuperClaude/.claude/commands/shared/mcp-flags.yml +0 -109
  553. package/SuperClaude/.claude/commands/shared/migration-report.md +0 -165
  554. package/SuperClaude/.claude/commands/shared/patterns.yml +0 -155
  555. package/SuperClaude/.claude/commands/shared/performance.yml +0 -317
  556. package/SuperClaude/.claude/commands/shared/planning-mode.yml +0 -51
  557. package/SuperClaude/.claude/commands/shared/research-first.yml +0 -278
  558. package/SuperClaude/.claude/commands/shared/session-recovery.yml +0 -144
  559. package/SuperClaude/.claude/commands/shared/severity-levels.yml +0 -252
  560. package/SuperClaude/.claude/commands/shared/task-system.yml +0 -380
  561. package/SuperClaude/.claude/commands/shared/task-ultracompressed.yml +0 -88
  562. package/SuperClaude/.claude/commands/shared/templates/feature-template.md +0 -59
  563. package/SuperClaude/.claude/commands/shared/templates/task-ultracompressed.md +0 -26
  564. package/SuperClaude/.claude/commands/shared/thinking-modes.yml +0 -61
  565. package/SuperClaude/.claude/commands/shared/ultracompressed.yml +0 -97
  566. package/SuperClaude/.claude/commands/shared/user-experience.yml +0 -208
  567. package/SuperClaude/.claude/commands/shared/validation.yml +0 -54
  568. package/SuperClaude/.claude/commands/shared/workflow-chains.yml +0 -138
  569. package/SuperClaude/.claude/commands/spawn.md +0 -106
  570. package/SuperClaude/.claude/commands/task.md +0 -110
  571. package/SuperClaude/.claude/commands/test.md +0 -67
  572. package/SuperClaude/.claude/commands/troubleshoot.md +0 -93
  573. package/SuperClaude/.github/ISSUE_TEMPLATE/bug_report.yml +0 -114
  574. package/SuperClaude/.github/ISSUE_TEMPLATE/feature_request.yml +0 -119
  575. package/SuperClaude/.github/ISSUE_TEMPLATE/question.yml +0 -87
  576. package/SuperClaude/.github/pull_request_template.md +0 -62
  577. package/SuperClaude/CHANGELOG.md +0 -109
  578. package/SuperClaude/CLAUDE.md +0 -95
  579. package/SuperClaude/CODE_OF_CONDUCT.md +0 -45
  580. package/SuperClaude/CONTRIBUTING.md +0 -225
  581. package/SuperClaude/Commands_Cheat_Sheet.md +0 -160
  582. package/SuperClaude/LICENSE +0 -21
  583. package/SuperClaude/MCP.md +0 -117
  584. package/SuperClaude/PERSONAS.md +0 -115
  585. package/SuperClaude/README.md +0 -249
  586. package/SuperClaude/RULES.md +0 -220
  587. package/SuperClaude/SECURITY.md +0 -91
  588. package/SuperClaude/install.sh +0 -296
  589. package/appiq-mcp installer/How-to.md +0 -250
  590. package/appiq-mcp installer/LICENSE +0 -21
  591. package/appiq-mcp installer/README.md +0 -235
  592. package/appiq-mcp installer/index.js +0 -672
  593. package/appiq-mcp installer/my_mcps.md +0 -105
  594. package/appiq-mcp installer/package-lock.json +0 -708
  595. package/appiq-mcp installer/package.json +0 -46
  596. package/appiq-mcp installer/test-install.bat +0 -60
  597. package/appiq-mcp installer/test-install.sh +0 -55
  598. package/appiq-mcp installer/test-load.js +0 -40
  599. package/bmad-core/agent-teams/team-flutter-mobile.yaml +0 -114
  600. package/bmad-core/agents/bmad-smart-launcher.md +0 -170
  601. package/bmad-core/agents/init-flow-po.md +0 -143
  602. package/bmad-core/checklists/security-validation-checklist.md +0 -332
  603. package/bmad-core/core-config.yaml.bak +0 -20
  604. package/bmad-core/data/backend-services-integration.md +0 -686
  605. package/bmad-core/data/shadcn-ui-integration.md +0 -388
  606. package/bmad-core/tasks/create-flutter-story.md +0 -197
  607. package/bmad-core/tasks/intelligent-epic-creation.md +0 -234
  608. package/bmad-core/tasks/smart-project-analysis.md +0 -289
  609. package/bmad-core/templates/flutter-mobile-prd-tmpl.yaml +0 -330
  610. package/bmad-core/templates/flutter-story-tmpl.yaml +0 -376
  611. package/bmad-core/templates/flutter-ui-spec-tmpl.yaml +0 -415
  612. package/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-analytics.txt +0 -1530
  613. package/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-architect.txt +0 -322
  614. package/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-developer.txt +0 -692
  615. package/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-pm.txt +0 -382
  616. package/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-qa.txt +0 -665
  617. package/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-security.txt +0 -1070
  618. package/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-ux-expert.txt +0 -1494
  619. package/dist/expansion-packs/bmad-mobile-app-dev/teams/mobile-team-cross-platform.txt +0 -15613
  620. package/flutter/CLAUDE.md +0 -58
  621. package/flutter/punkt.claude/New Folder With Items/channel.md +0 -221
  622. package/flutter/punkt.claude/New Folder With Items/commands/add-translations.md +0 -12
  623. package/flutter/punkt.claude/New Folder With Items/commands/create-feature.md +0 -168
  624. package/flutter/punkt.claude/New Folder With Items/commands/explain-codebase.md +0 -1
  625. package/flutter/punkt.claude/New Folder With Items/commands/feature-business-logic.md +0 -551
  626. package/flutter/punkt.claude/New Folder With Items/commands/feature-data-layer.md +0 -924
  627. package/flutter/punkt.claude/New Folder With Items/commands/feature-domain-layer.md +0 -540
  628. package/flutter/punkt.claude/New Folder With Items/commands/feature-integration.md +0 -493
  629. package/flutter/punkt.claude/New Folder With Items/commands/feature-localization.md +0 -427
  630. package/flutter/punkt.claude/New Folder With Items/commands/feature-ui-layer.md +0 -300
  631. package/flutter/punkt.claude/New Folder With Items/commands/git-commit.md +0 -3
  632. package/flutter/punkt.claude/New Folder With Items/commands/search-web.md +0 -1
  633. package/flutter/punkt.claude/punkt.claude/channel.md +0 -225
  634. package/flutter/punkt.claude/punkt.claude/commands/add-translations.md +0 -60
  635. package/flutter/punkt.claude/punkt.claude/commands/bug-fix.md +0 -32
  636. package/flutter/punkt.claude/punkt.claude/commands/checkdev.md +0 -122
  637. package/flutter/punkt.claude/punkt.claude/commands/create-feature.md +0 -174
  638. package/flutter/punkt.claude/punkt.claude/commands/dev.md +0 -79
  639. package/flutter/punkt.claude/punkt.claude/commands/explain-codebase.md +0 -1
  640. package/flutter/punkt.claude/punkt.claude/commands/feature-business-logic.md +0 -430
  641. package/flutter/punkt.claude/punkt.claude/commands/feature-data-layer.md +0 -572
  642. package/flutter/punkt.claude/punkt.claude/commands/feature-domain-layer.md +0 -537
  643. package/flutter/punkt.claude/punkt.claude/commands/feature-integration.md +0 -493
  644. package/flutter/punkt.claude/punkt.claude/commands/feature-localization.md +0 -427
  645. package/flutter/punkt.claude/punkt.claude/commands/feature-ui-layer.md +0 -831
  646. package/flutter/punkt.claude/punkt.claude/commands/git-commit.md +0 -3
  647. package/flutter/punkt.claude/punkt.claude/commands/manage-translations.md +0 -433
  648. package/flutter/punkt.claude/punkt.claude/commands/search-web.md +0 -1
  649. package/flutter/punkt.claude/punkt.claude/developer_check.md +0 -121
  650. package/tools/appiq-installer.js +0 -2711
  651. package/tools/epic-solution-installer.js +0 -536
  652. package/tools/setup-ide-commands.js +0 -348
  653. package/tools/smart-installer.js +0 -592
  654. package/web/CLAUDE.md +0 -58
  655. /package/{#Tools/APPIQ-METHOD/.github → .github}/FUNDING.yaml +0 -0
  656. /package/{#Tools/APPIQ-METHOD/.github → .github}/ISSUE_TEMPLATE/bug_report.md +0 -0
  657. /package/{#Tools/APPIQ-METHOD/.github → .github}/ISSUE_TEMPLATE/feature_request.md +0 -0
  658. /package/{#Tools/APPIQ-METHOD/.github → .github}/workflows/release.yaml +0 -0
  659. /package/{#Tools/APPIQ-METHOD/.releaserc.json → .releaserc.json} +0 -0
  660. /package/{#Tools/APPIQ-METHOD/.vscode → .vscode}/settings.json +0 -0
  661. /package/{#Tools/APPIQ-METHOD/CHANGELOG.md → CHANGELOG.md} +0 -0
  662. /package/{#Tools/APPIQ-METHOD/CONTRIBUTING.md → CONTRIBUTING.md} +0 -0
  663. /package/{#Tools/APPIQ-METHOD/LICENSE → LICENSE} +0 -0
  664. /package/{#Tools/APPIQ-METHOD/common → common}/tasks/create-doc.md +0 -0
  665. /package/{#Tools/APPIQ-METHOD/common → common}/tasks/execute-checklist.md +0 -0
  666. /package/{#Tools/APPIQ-METHOD/common → common}/utils/bmad-doc-template.md +0 -0
  667. /package/{#Tools/APPIQ-METHOD/common → common}/utils/workflow-management.md +0 -0
  668. /package/{#Tools/APPIQ-METHOD/docs → docs}/GUIDING-PRINCIPLES.md +0 -0
  669. /package/{#Tools/APPIQ-METHOD/docs → docs}/core-architecture.md +0 -0
  670. /package/{#Tools/APPIQ-METHOD/docs → docs}/expansion-packs.md +0 -0
  671. /package/{#Tools/APPIQ-METHOD/docs → docs}/how-to-contribute-with-pull-requests.md +0 -0
  672. /package/{#Tools/APPIQ-METHOD/docs → docs}/versioning-and-releases.md +0 -0
  673. /package/{#Tools/APPIQ-METHOD/docs → docs}/versions.md +0 -0
  674. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/README.md +0 -0
  675. /package/{#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev → expansion-packs/appiq-flutter-mobile-dev}/agent-teams/flutter-mobile-team.yaml +0 -0
  676. /package/{#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev → expansion-packs/appiq-flutter-mobile-dev}/agents/flutter-cubit-agent.md +0 -0
  677. /package/{#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev → expansion-packs/appiq-flutter-mobile-dev}/agents/flutter-data-agent.md +0 -0
  678. /package/{#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev → expansion-packs/appiq-flutter-mobile-dev}/agents/flutter-domain-agent.md +0 -0
  679. /package/{#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev → expansion-packs/appiq-flutter-mobile-dev}/agents/flutter-ui-agent.md +0 -0
  680. /package/{#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev → expansion-packs/appiq-flutter-mobile-dev}/agents/shared-components-agent.md +0 -0
  681. /package/{#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev → expansion-packs/appiq-flutter-mobile-dev}/checklists/flutter-story-dod-checklist.md +0 -0
  682. /package/{#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev → expansion-packs/appiq-flutter-mobile-dev}/config.yaml +0 -0
  683. /package/{#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev → expansion-packs/appiq-flutter-mobile-dev}/data/flutter-development-guidelines.md +0 -0
  684. /package/{#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev → expansion-packs/appiq-flutter-mobile-dev}/templates/flutter-mobile-architecture-tmpl.yaml +0 -0
  685. /package/{#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev → expansion-packs/appiq-flutter-mobile-dev}/workflows/flutter-ui-first-development.yaml +0 -0
  686. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/agent-teams/phaser-2d-nodejs-game-team.yaml +0 -0
  687. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/agents/game-designer.md +0 -0
  688. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/agents/game-developer.md +0 -0
  689. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/agents/game-sm.md +0 -0
  690. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/checklists/game-design-checklist.md +0 -0
  691. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/checklists/game-story-dod-checklist.md +0 -0
  692. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/config.yaml +0 -0
  693. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/data/bmad-kb.md +0 -0
  694. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/data/development-guidelines.md +0 -0
  695. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/tasks/advanced-elicitation.md +0 -0
  696. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/tasks/create-game-story.md +0 -0
  697. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/tasks/game-design-brainstorming.md +0 -0
  698. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/templates/game-architecture-tmpl.yaml +0 -0
  699. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/templates/game-brief-tmpl.yaml +0 -0
  700. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/templates/game-design-doc-tmpl.yaml +0 -0
  701. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/templates/game-story-tmpl.yaml +0 -0
  702. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/templates/level-design-doc-tmpl.yaml +0 -0
  703. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/workflows/game-dev-greenfield.yaml +0 -0
  704. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/workflows/game-prototype.yaml +0 -0
  705. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/agent-teams/unity-2d-game-team.yaml +0 -0
  706. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/agents/game-architect.md +0 -0
  707. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/agents/game-designer.md +0 -0
  708. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/agents/game-developer.md +0 -0
  709. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/agents/game-sm.md +0 -0
  710. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/checklists/game-architect-checklist.md +0 -0
  711. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/checklists/game-change-checklist.md +0 -0
  712. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/checklists/game-design-checklist.md +0 -0
  713. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/checklists/game-story-dod-checklist.md +0 -0
  714. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/config.yaml +0 -0
  715. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/data/bmad-kb.md +0 -0
  716. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/data/development-guidelines.md +0 -0
  717. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/tasks/advanced-elicitation.md +0 -0
  718. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/tasks/correct-course-game.md +0 -0
  719. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/tasks/create-game-story.md +0 -0
  720. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/tasks/game-design-brainstorming.md +0 -0
  721. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/tasks/validate-game-story.md +0 -0
  722. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/templates/game-architecture-tmpl.yaml +0 -0
  723. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/templates/game-brief-tmpl.yaml +0 -0
  724. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/templates/game-design-doc-tmpl.yaml +0 -0
  725. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/templates/game-story-tmpl.yaml +0 -0
  726. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/templates/level-design-doc-tmpl.yaml +0 -0
  727. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/workflows/game-dev-greenfield.yaml +0 -0
  728. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/workflows/game-prototype.yaml +0 -0
  729. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-infrastructure-devops/README.md +0 -0
  730. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-infrastructure-devops/agents/infra-devops-platform.md +0 -0
  731. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-infrastructure-devops/checklists/infrastructure-checklist.md +0 -0
  732. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-infrastructure-devops/config.yaml +0 -0
  733. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-infrastructure-devops/data/bmad-kb.md +0 -0
  734. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-infrastructure-devops/tasks/review-infrastructure.md +0 -0
  735. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-infrastructure-devops/tasks/validate-infrastructure.md +0 -0
  736. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-infrastructure-devops/templates/infrastructure-architecture-tmpl.yaml +0 -0
  737. /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-infrastructure-devops/templates/infrastructure-platform-from-arch-tmpl.yaml +0 -0
@@ -1,308 +0,0 @@
1
- # Effective Dart Rules
2
-
3
- ### Naming Conventions
4
- 1. Use terms consistently throughout your code.
5
- 2. Follow existing mnemonic conventions when naming type parameters (e.g., `E` for element, `K`/`V` for key/value, `T`/`S`/`U` for generic types).
6
- 3. Name types using `UpperCamelCase` (classes, enums, typedefs, type parameters).
7
- 4. Name extensions using `UpperCamelCase`.
8
- 5. Name packages, directories, and source files using `lowercase_with_underscores`.
9
- 6. Name import prefixes using `lowercase_with_underscores`.
10
- 7. Name other identifiers using `lowerCamelCase` (variables, parameters, named parameters).
11
- 8. Capitalize acronyms and abbreviations longer than two letters like words.
12
- 9. Avoid abbreviations unless the abbreviation is more common than the unabbreviated term.
13
- 10. Prefer putting the most descriptive noun last in names.
14
- 11. Consider making code read like a sentence when designing APIs.
15
- 12. Prefer a noun phrase for non-boolean properties or variables.
16
- 13. Prefer a non-imperative verb phrase for boolean properties or variables.
17
- 14. Prefer the positive form for boolean property and variable names.
18
- 15. Consider omitting the verb for named boolean parameters.
19
- 16. Use camelCase for variable and function names.
20
- 17. Use PascalCase for class names.
21
- 18. Use snake_case for file names.
22
-
23
- ### Types and Functions
24
- 1. Use class modifiers to control if your class can be extended or used as an interface.
25
- 2. Type annotate variables without initializers.
26
- 3. Type annotate fields and top-level variables if the type isn't obvious.
27
- 4. Annotate return types on function declarations.
28
- 5. Annotate parameter types on function declarations.
29
- 6. Write type arguments on generic invocations that aren't inferred.
30
- 7. Annotate with `dynamic` instead of letting inference fail.
31
- 8. Use `Future<void>` as the return type of asynchronous members that do not produce values.
32
- 9. Use getters for operations that conceptually access properties.
33
- 10. Use setters for operations that conceptually change properties.
34
- 11. Use a function declaration to bind a function to a name.
35
- 12. Use inclusive start and exclusive end parameters to accept a range.
36
-
37
- ### Style
38
- 1. Format your code using `dart format`.
39
- 2. Use curly braces for all flow control statements.
40
- 3. Prefer `final` over `var` when variable values won't change.
41
- 4. Use `const` for compile-time constants.
42
-
43
- ### Imports & Files
44
- 1. Don't import libraries inside the `src` directory of another package.
45
- 2. Don't allow import paths to reach into or out of `lib`.
46
- 3. Prefer relative import paths within a package.
47
- 4. Don't use `/lib/` or `../` in import paths.
48
- 5. Consider writing a library-level doc comment for library files.
49
-
50
- ### Structure
51
- 1. Keep files focused on a single responsibility.
52
- 2. Limit file length to maintain readability.
53
- 3. Group related functionality together.
54
- 4. Prefer making fields and top-level variables `final`.
55
- 5. Consider making your constructor `const` if the class supports it.
56
- 6. Prefer making declarations private.
57
-
58
- ### Usage
59
- 1. Use strings in `part of` directives.
60
- 2. Use adjacent strings to concatenate string literals.
61
- 3. Use collection literals when possible.
62
- 4. Use `whereType()` to filter a collection by type.
63
- 5. Test for `Future<T>` when disambiguating a `FutureOr<T>` whose type argument could be `Object`.
64
- 6. Follow a consistent rule for `var` and `final` on local variables.
65
- 7. Initialize fields at their declaration when possible.
66
- 8. Use initializing formals when possible.
67
- 9. Use `;` instead of `{}` for empty constructor bodies.
68
- 10. Use `rethrow` to rethrow a caught exception.
69
- 11. Override `hashCode` if you override `==`.
70
- 12. Make your `==` operator obey the mathematical rules of equality.
71
-
72
- ### Documentation
73
- 1. Format comments like sentences.
74
- 2. Use `///` doc comments to document members and types; don't use block comments for documentation.
75
- 3. Prefer writing doc comments for public APIs.
76
- 4. Consider writing doc comments for private APIs.
77
- 5. Consider including explanations of terminology, links, and references in library-level docs.
78
- 6. Start doc comments with a single-sentence summary.
79
- 7. Separate the first sentence of a doc comment into its own paragraph.
80
- 8. Use square brackets in doc comments to refer to in-scope identifiers.
81
- 9. Use prose to explain parameters, return values, and exceptions.
82
- 10. Put doc comments before metadata annotations.
83
- 11. Document why code exists or how it should be used, not just what it does.
84
-
85
- ### Testing
86
- 1. Write unit tests for business logic.
87
- 2. Write widget tests for UI components.
88
- 3. Aim for good test coverage.
89
-
90
- ### Widgets
91
- 1. Extract reusable widgets into separate components.
92
- 2. Use `StatelessWidget` when possible.
93
- 3. Keep build methods simple and focused.
94
-
95
- ### State Management
96
- 1. Choose appropriate state management based on complexity.
97
- 2. Avoid unnecessary `StatefulWidget`s.
98
- 3. Keep state as local as possible.
99
-
100
- ### Performance
101
- 1. Use `const` constructors when possible.
102
- 2. Avoid expensive operations in build methods.
103
- 3. Implement pagination for large lists.
104
-
105
- # Dart 3 Updates
106
-
107
- ### Branches
108
- 1. Use `if` statements for conditional branching. The condition must evaluate to a boolean.
109
- 2. `if` statements support optional `else` and `else if` clauses for multiple branches.
110
- 3. Use `if-case` statements to match and destructure a value against a single pattern. Example: `if (pair case [int x, int y]) { ... }`
111
- 4. If the pattern in an `if-case` matches, variables defined in the pattern are in scope for that branch.
112
- 5. If the pattern does not match in an `if-case`, control flows to the `else` branch if present.
113
- 6. Use `switch` statements to match a value against multiple patterns (cases). Each `case` can use any kind of pattern.
114
- 7. When a value matches a `case` pattern in a `switch` statement, the case body executes and control jumps to the end of the switch. `break` is not required.
115
- 8. You can end a non-empty `case` clause with `continue`, `throw`, or `return`.
116
- 9. Use `default` or `_` in a `switch` statement to handle unmatched values.
117
- 10. Empty `case` clauses fall through to the next case. Use `break` to prevent fallthrough.
118
- 11. Use `continue` with a label for non-sequential fallthrough between cases.
119
- 12. Use logical-or patterns (e.g., `case a || b`) to share a body or guard between cases.
120
- 13. Use `switch` expressions to produce a value based on matching cases. Syntax differs from statements: omit `case`, use `=>` for bodies, and separate cases with commas.
121
- 14. In `switch` expressions, the default case must use `_` (not `default`).
122
- 15. Dart checks for exhaustiveness in `switch` statements and expressions, reporting a compile-time error if not all possible values are handled.
123
- 16. To ensure exhaustiveness, use a default (`default` or `_`) case, or switch over enums or sealed types.
124
- 17. Use the `sealed` modifier on a class to enable exhaustiveness checking when switching over its subtypes.
125
- 18. Add a guard clause to a `case` using `when` to further constrain when a case matches. Example: `case pattern when condition:`
126
- 19. Guard clauses can be used in `if-case`, `switch` statements, and `switch` expressions. The guard is evaluated after pattern matching.
127
- 20. If a guard clause evaluates to false, execution proceeds to the next case (does not exit the switch).
128
-
129
- ### Patterns
130
- 1. Patterns are a syntactic category that represent the shape of values for matching and destructuring.
131
- 2. Pattern matching checks if a value has a certain shape, constant, equality, or type.
132
- 3. Pattern destructuring allows extracting parts of a matched value and binding them to variables.
133
- 4. Patterns can be nested, using subpatterns (outer/inner patterns) for recursive matching and destructuring.
134
- 5. Use wildcard patterns (`_`) to ignore parts of a matched value; use rest elements in list patterns to ignore remaining elements.
135
- 6. Patterns can be used in:
136
- - Local variable declarations and assignments
137
- - For and for-in loops
138
- - If-case and switch-case statements
139
- - Control flow in collection literals
140
- 7. Pattern variable declarations start with `var` or `final` and bind new variables from the matched value. Example: `var (a, [b, c]) = ('str', [1, 2]);`
141
- 8. Pattern variable assignments destructure a value and assign to existing variables. Example: `(b, a) = (a, b); // swap values`
142
- 9. Every case clause in `switch` and `if-case` contains a pattern. Any kind of pattern can be used in a case.
143
- 10. Case patterns are refutable; if the pattern doesn't match, execution continues to the next case.
144
- 11. Destructured values in a case become local variables scoped to the case body.
145
- 12. Use logical-or patterns (e.g., `case a || b`) to match multiple alternatives in a single case.
146
- 13. Use logical-or patterns with guards (`when`) to share a body or guard between cases.
147
- 14. Guard clauses (`when`) evaluate a condition after matching; if false, execution proceeds to the next case.
148
- 15. Patterns can be used in for and for-in loops to destructure collection elements (e.g., destructuring `MapEntry` in map iteration).
149
- 16. Object patterns match named object types and destructure their data using getters. Example: `var Foo(:one, :two) = myFoo;`
150
- 8. Constant patterns match if the value is equal to a constant (number, string, bool, named constant, const constructor, const collection, etc.). Use parentheses and `const` for complex expressions.
151
- 9. Variable patterns (`var name`, `final Type name`) bind new variables to matched/destructured values. Typed variable patterns only match if the value has the declared type.
152
- 10. Identifier patterns (`foo`, `_`) act as variable or constant patterns depending on context. `_` always acts as a wildcard and matches/discards any value.
153
- 11. Parenthesized patterns (`(subpattern)`) control pattern precedence and grouping, similar to expressions.
154
- 12. List patterns (`[subpattern1, subpattern2]`) match lists and destructure elements by position. The pattern length must match the list unless a rest element is used.
155
- 13. Rest elements (`...`, `...rest`) in list patterns match arbitrary-length lists or collect unmatched elements into a new list.
156
- 14. Map patterns (`{"key": subpattern}`) match maps and destructure by key. Only specified keys are matched; missing keys throw a `StateError`.
157
- 15. Record patterns (`(subpattern1, subpattern2)`, `(x: subpattern1, y: subpattern2)`) match records by shape and destructure positional/named fields. Field names can be omitted if inferred from variable or identifier patterns.
158
- 16. Object patterns (`ClassName(field1: subpattern1, field2: subpattern2)`) match objects by type and destructure using getters. Extra fields in the object are ignored.
159
- 17. Wildcard patterns (`_`, `Type _`) match any value without binding. Useful for ignoring values or type-checking without binding.
160
- 18. All pattern types can be nested and combined for expressive and precise matching and destructuring.
161
-
162
- ### Records
163
- 1. Records are anonymous, immutable, aggregate types that bundle multiple objects into a single value.
164
- 2. Records are fixed-sized, heterogeneous, and strongly typed. Each field can have a different type.
165
- 3. Records are real values: store them in variables, nest them, pass to/from functions, and use in lists, maps, and sets.
166
- 4. Record expressions use parentheses with comma-delimited positional and/or named fields, e.g. `('first', a: 2, b: true, 'last')`.
167
- 5. Record type annotations use parentheses with comma-delimited types. Named fields use curly braces: `({int a, bool b})`.
168
- 6. The names of named fields are part of the record's type (shape). Records with different named field names have different types.
169
- 7. Positional field names in type annotations are for documentation only and do not affect the record's type.
170
- 8. Record fields are accessed via built-in getters: positional fields as `$1`, `$2`, etc., and named fields by their name (e.g., `.a`).
171
- 9. Records are immutable: fields do not have setters.
172
- 10. Records are structurally typed: the set, types, and names of fields define the record's type (shape).
173
- 11. Two records are equal if they have the same shape and all corresponding field values are equal. Named field order does not affect equality.
174
- 12. Records automatically define `hashCode` and `==` based on structure and field values.
175
- 13. Use records for functions that return multiple values; destructure with pattern matching: `var (name, age) = userInfo(json);`
176
- 14. Destructure named fields with the colon syntax: `final (:name, :age) = userInfo(json);`
177
- 15. Using records for multiple returns is more concise and type-safe than using classes, lists, or maps.
178
- 16. Use lists of records for simple data tuples with the same shape.
179
- 17. Use type aliases (`typedef`) for record types to improve readability and maintainability.
180
- 18. Changing a record type alias does not guarantee all code using it is still type-safe; only classes provide full abstraction/encapsulation.
181
- 19. Extension types can wrap records but do not provide full abstraction or protection.
182
- 20. Records are best for simple, immutable data aggregation; use classes for abstraction, encapsulation, and behavior.
183
-
184
- # Common Flutter Errors
185
-
186
- 1. If you get a "RenderFlex overflowed" error, check if a `Row` or `Column` contains unconstrained widgets. Fix by wrapping children in `Flexible`, `Expanded`, or by setting constraints.
187
- 2. If you get "Vertical viewport was given unbounded height", ensure `ListView` or similar scrollable widgets inside a `Column` have a bounded height (e.g., wrap with `Expanded` or `SizedBox`).
188
- 3. If you get "An InputDecorator...cannot have an unbounded width", constrain the width of widgets like `TextField` using `Expanded`, `SizedBox`, or by placing them in a parent with width constraints.
189
- 4. If you get a "setState called during build" error, do not call `setState` or `showDialog` directly inside the build method. Trigger dialogs or state changes in response to user actions or after the build completes (e.g., using `addPostFrameCallback`).
190
- 5. If you get "The ScrollController is attached to multiple scroll views", make sure each `ScrollController` is only attached to a single scrollable widget at a time.
191
- 6. If you get a "RenderBox was not laid out" error, check for missing or unbounded constraints in your widget tree. This is often caused by using widgets like `ListView` or `Column` without proper size constraints.
192
- 7. Use the Flutter Inspector and review widget constraints to debug layout issues. Refer to the official documentation on constraints if needed.
193
- # Bloc Rules
194
-
195
- ### Naming Conventions
196
- 1. Name events in the past tense, as they represent actions that have already occurred from the bloc's perspective.
197
- 2. Use the format: `BlocSubject` + optional noun + verb (event). Example: `LoginButtonPressed`, `UserProfileLoaded`
198
- 3. For initial load events, use: `BlocSubjectStarted`. Example: `AuthenticationStarted`
199
- 4. The base event class should be named: `BlocSubjectEvent`.
200
- 5. Name states as nouns, since a state is a snapshot at a particular point in time.
201
- 6. When using subclasses for states, use the format: `BlocSubject` + `Initial` | `Success` | `Failure` | `InProgress`. Example: `LoginInitial`, `LoginSuccess`, `LoginFailure`, `LoginInProgress`
202
- 7. For single-class states, use: `BlocSubjectState` with a `BlocSubjectStatus` enum (`initial`, `success`, `failure`, `loading`). Example: `LoginState` with `LoginStatus.initial`
203
- 8. The base state class should always be named: `BlocSubjectState`.
204
-
205
- ### Modeling State
206
- 1. Extend `Equatable` for all state classes to enable value equality.
207
- 2. Annotate state classes with `@immutable` to enforce immutability.
208
- 3. Implement a `copyWith` method in state classes for easy state updates.
209
- 4. Use `const` constructors for state classes when possible.
210
- 5. Use a single concrete class with a status enum for simple, non-exclusive states or when many properties are shared.
211
- 6. In the single-class approach, make properties nullable and handle them based on the current status.
212
- 7. Use a sealed class with subclasses for well-defined, exclusive states.
213
- 8. Store shared properties in the sealed base class; keep state-specific properties in subclasses.
214
- 9. Use exhaustive `switch` statements to handle all possible state subclasses.
215
- 10. Prefer the sealed class approach for type safety and exhaustiveness; prefer the single-class approach for conciseness and flexibility.
216
- 11. Always pass all relevant properties to the `props` getter when using Equatable in state classes.
217
- 12. When using Equatable, copy List or Map properties with `List.of` or `Map.of` to ensure value equality.
218
- 13. To retain previous data after an error, use a single state class with nullable data and error fields.
219
- 14. Emit a new instance of the state each time you want the UI to update; do not reuse the same instance.
220
-
221
- ### Bloc Concepts
222
- 1. Use `Cubit` for simple state management without events; use `Bloc` for more complex, event-driven state management.
223
- 2. Define the initial state by passing it to the superclass in both `Cubit` and `Bloc`.
224
- 3. Only use the `emit` method inside a `Cubit` or `Bloc`; do not call it externally.
225
- 4. UI components should listen to state changes and update only in response to new states.
226
- 5. Duplicate states (`state == nextState`) are ignored; no state change will occur.
227
- 6. Override `onChange` in `Cubit` or `Bloc` to observe all state changes.
228
- 7. Use a custom `BlocObserver` to observe all state changes and errors globally.
229
- 8. Override `onError` in both `Cubit`/`Bloc` and `BlocObserver` for error handling.
230
- 9. Add events to a `Bloc` in response to user actions or lifecycle events.
231
- 10. Use `onTransition` in `Bloc` to observe the full transition (event, current state, next state).
232
- 11. Use event transformers (e.g., debounce, throttle) in `Bloc` for advanced event processing.
233
- 12. Prefer `Cubit` for simplicity and less boilerplate; prefer `Bloc` for traceability and advanced event handling.
234
- 13. If unsure, start with `Cubit` and refactor to `Bloc` if needed as requirements grow.
235
- 14. Initialize `BlocObserver` in `main.dart` for debugging and logging.
236
- 15. Always keep business logic out of UI widgets; only interact with cubits/blocs via events or public methods.
237
- 16. Internal events in a bloc should be private and only used for real-time updates from repositories.
238
- 17. Use custom event transformers for internal events if needed.
239
- 18. When exposing public methods on a cubit, only use them to trigger state changes and return `void` or `Future<void>`.
240
- 19. For blocs, avoid exposing custom public methods; trigger state changes by adding events.
241
- 20. When using `BlocProvider.of(context)`, call it within a child `BuildContext`, not the same context where the bloc was provided.
242
-
243
- ### Architecture
244
- 1. Separate your features into three layers: Presentation, Business Logic, and Data.
245
- 2. The Data Layer is responsible for retrieving and manipulating data from sources such as databases or network requests.
246
- 3. Structure the Data Layer into repositories (wrappers around data providers) and data providers (perform CRUD operations).
247
- 4. The Business Logic Layer responds to input from the presentation layer and communicates with repositories to build new states.
248
- 5. The Presentation Layer renders UI based on bloc states and handles user input and lifecycle events.
249
- 6. Inject repositories into blocs via constructors; blocs should not directly access data providers.
250
- 7. Avoid direct bloc-to-bloc communication to prevent tight coupling.
251
- 8. To coordinate between blocs, use BlocListener in the presentation layer to listen to one bloc and add events to another.
252
- 9. For shared data, inject the same repository into multiple blocs; let each bloc listen to repository streams independently.
253
- 10. Always strive for loose coupling between architectural layers and components.
254
- 11. Structure your project consistently and intentionally; there is no single right way.
255
-
256
- ### Flutter Bloc Concepts
257
- 1. Use `BlocBuilder` to rebuild widgets in response to bloc or cubit state changes; the builder function must be pure.
258
- 2. Use `BlocListener` to perform side effects (e.g., navigation, dialogs) in response to state changes.
259
- 3. Use `BlocConsumer` when you need both `BlocBuilder` and `BlocListener` functionality in a single widget.
260
- 4. Use `BlocProvider` to provide blocs to widget subtrees via dependency injection.
261
- 5. Use `MultiBlocProvider` to provide multiple blocs and avoid deeply nested providers.
262
- 6. Use `BlocSelector` to rebuild widgets only when a selected part of the state changes.
263
- 7. Use `MultiBlocListener` to listen for state changes and trigger side effects; avoid nesting listeners by using `MultiBlocListener`.
264
- 8. Use `RepositoryProvider` to provide repositories or services to the widget tree.
265
- 9. Use `MultiRepositoryProvider` to provide multiple repositories and avoid nesting.
266
- 10. Use `context.read<T>()` to access a bloc or repository without listening for changes (e.g., in callbacks).
267
- 11. Use `context.watch<T>()` inside the build method to listen for changes and trigger rebuilds.
268
- 12. Use `context.select<T, R>()` to listen for changes in a specific part of a bloc’s state.
269
- 13. Avoid using `context.watch` or `context.select` at the root of the build method to prevent unnecessary rebuilds.
270
- 14. Prefer `BlocBuilder` and `BlocSelector` over `context.watch` and `context.select` for explicit rebuild scoping.
271
- 15. Scope rebuilds using `Builder` when using `context.watch` or `context.select` for multiple blocs.
272
- 16. Handle all possible cubit/bloc states explicitly in the UI (e.g., empty, loading, error, populated).
273
-
274
- ### Testing
275
- 1. Add the `test` and `bloc_test` packages to your dev dependencies for bloc testing.
276
- 2. Organize tests into groups to share setup and teardown logic.
277
- 3. Create a dedicated test file (e.g., `counter_bloc_test.dart`) for each bloc.
278
- 4. Import the `test` and `bloc_test` packages in your test files.
279
- 5. Use `setUp` to initialize bloc instances before each test and `tearDown` to clean up after tests.
280
- 6. Test the bloc’s initial state before testing transitions.
281
- 7. Use the `blocTest` function to test bloc state transitions in response to events.
282
- 8. Assert the expected sequence of emitted states for each bloc event.
283
- 9. Keep tests concise, focused, and easy to maintain to ensure confidence in refactoring.
284
- 10. Mock cubits/blocs in widget tests to verify UI behavior for all possible states.
285
-
286
-
287
- ### Mocktail Rules
288
-
289
- 1. Use a `Fake` when you need a lightweight, custom implementation of a class for testing, especially if you only need to override a subset of methods or provide specific behavior.
290
- 2. Use a `Mock` when you need to verify interactions (method calls, arguments, call counts) or need to stub method responses dynamically during tests.
291
- 3. Use `registerFallbackValue` to register a default value for a type that is used as an argument in a mock method, especially when the type is not nullable and is required for argument matching (e.g., `registerFallbackValue(MyCustomEvent())`).
292
- 4. Extend `Mock` to create a mock class for the class or interface you want to mock.
293
- 5. Use `when(() => mock.method()).thenReturn(value)` to stub method calls, and `thenThrow(error)` to stub errors.
294
- 6. Use `when(() => mock.method()).thenAnswer((invocation) => value)` for dynamic responses.
295
- 7. Use `verify(() => mock.method())` to check if a method was called; use `verifyNever(() => mock.method())` to check it was never called.
296
- 8. Use `verify(() => mock.method()).called(n)` to check the exact number of invocations.
297
- 9. Use argument matchers like `any()`, `captureAny()`, and `captureThat()` for flexible verification and stubbing.
298
- 10. Always register fallback values for custom types used with argument matchers before using them in stubs or verifications.
299
- 11. Prefer using real objects over mocks when possible; if not, use a tested fake implementation (`extends Fake`) over a mock.
300
- 12. Never add implementation or `@override` methods to a class extending `Mock`.
301
- 13. Only use mocks if your test asserts on interactions (calls to `verify`); otherwise, prefer real or fake objects.
302
- 14. Always stub async methods (returning `Future` or `Future<void>`) with `thenAnswer((_) async {})` or `thenReturn(Future.value(...))`.
303
- 15. Always include all named parameters in both `when` and `verify` calls, even if you only care about one. Use `any(named: 'paramName')` for those you don't care about.
304
- 16. If a method has default values for named parameters, Mocktail still expects all of them to be matched in both stubs and verifies.
305
- 17. Use `any()` for positional parameters in `when`/`verify` if you don't care about the exact instance.
306
- 18. Register fallback values for any custom types that are used with argument matchers before using them in your tests.
307
- 19. Stub every method you expect to be called, even if it's not the focus of your test, to prevent runtime errors.
308
- 20. When matching string outputs, make sure you understand what `.toString()` returns for the type you are using.
@@ -1,87 +0,0 @@
1
- # Effective Dart Rules
2
-
3
- ### Key Rules
4
- 1. Use class modifiers to control if your class can be extended or used as an interface.
5
- 2. Make your `==` operator obey the mathematical rules of equality and override `hashCode` if you override `==`.
6
- 3. Type annotate fields, variables, and parameters when the type isn't obvious.
7
- 4. Use `Future<void>` as the return type of asynchronous members that do not produce values.
8
- 5. Use getters for operations that conceptually access properties and setters for operations that conceptually change properties.
9
- 6. Use collection literals when possible.
10
- 7. Use `whereType()` to filter a collection by type.
11
- 8. Initialize fields at their declaration when possible.
12
- 9. Use initializing formals when possible.
13
- 10. Use `rethrow` to rethrow a caught exception.
14
-
15
- ### Style & Structure
16
- 1. Prefer `final` over `var` when variable values won't change.
17
- 2. Use `const` for compile-time constants.
18
- 3. Keep files focused on a single responsibility.
19
- 4. Prefer making declarations private.
20
- 5. Prefer making fields and top-level variables `final`.
21
- 6. Consider making your constructor `const` if the class supports it.
22
-
23
- # Dart 3 Updates
24
-
25
- ### Key Features
26
- 1. Use records to group multiple values into a single, immutable object.
27
- 2. Access record fields by position (`$1`, `$2`, ...) or by name.
28
- 3. Use record types as return types or parameters for functions that return multiple values.
29
- 4. Use patterns to destructure records, lists, and objects directly in variable declarations, switch statements, and if-case.
30
- 5. Use switch expressions and pattern matching for concise and exhaustive control flow.
31
- 6. Use sealed classes to restrict which classes can implement or extend a base class.
32
- 7. Use class modifiers: `base`, `interface`, `final`, and `sealed`.
33
-
34
- # Flutter Best Practices
35
-
36
- ### Widgets & UI
37
- 1. Extract reusable widgets into separate components.
38
- 2. Use `StatelessWidget` when possible and avoid unnecessary `StatefulWidgets`.
39
- 3. Keep build methods simple and focused.
40
- 4. Keep state as local as possible.
41
- 5. Use `const` constructors when possible.
42
- 6. Avoid expensive operations in build methods.
43
- 7. Implement pagination for large lists.
44
-
45
- # Common Flutter Errors
46
-
47
- 1. If you get a "RenderFlex overflowed" error, check if a `Row` or `Column` contains unconstrained widgets.
48
- 2. If you get "Vertical viewport was given unbounded height", ensure `ListView` or similar scrollable widgets inside a `Column` have a bounded height.
49
- 3. If you get "An InputDecorator...cannot have an unbounded width", constrain the width of widgets like `TextField`.
50
- 4. If you get a "setState called during build" error, do not call `setState` or `showDialog` directly inside the build method.
51
- 5. If you get "The ScrollController is attached to multiple scroll views", make sure each `ScrollController` is only attached to a single scrollable widget at a time.
52
-
53
- # Bloc Rules
54
-
55
- ### Naming Conventions
56
- 1. Events should be named in the past tense, reflecting actions that have already occurred.
57
- 2. States should be nouns.
58
-
59
- ### State Modeling
60
- 1. Prefer sealed classes or subclasses for exclusive states to enforce exhaustiveness and type safety.
61
- 2. State classes should extend `Equatable`, use `@immutable`, implement a `copyWith` method, and use `const` constructors where possible.
62
-
63
- ### Bloc Architecture
64
- 1. Implement a custom `BlocObserver` to monitor all state changes and errors across blocs.
65
- 2. Keep business logic inside blocs/cubits, not in UI widgets.
66
- 3. Only emit new states when the data actually changes to avoid unnecessary rebuilds.
67
- 4. Separate your features into three layers: Presentation, Business Logic, and Data.
68
-
69
- ### Flutter Bloc Integration
70
- 1. Use `BlocProvider` to provide blocs to widget subtrees.
71
- 2. Use `BlocBuilder` to rebuild widgets in response to state changes.
72
- 3. Use `BlocListener` for side effects in response to state changes.
73
- 4. Use `context.select` for fine-grained rebuilds.
74
-
75
- ### Bloc Do's and Don'ts
76
- 1. Do not mutate state directly; always emit a new state.
77
- 2. Do not perform side effects inside blocs; use the UI layer or listen to state changes for side effects.
78
- 3. Do not use `context.read` in the build method to access state; use `BlocBuilder` or `context.watch` instead.
79
-
80
- # Mocktail Rules
81
-
82
- 1. Use a `Fake` when you need a lightweight, custom implementation of a class for testing.
83
- 2. Use a `Mock` when you need to verify interactions or stub method responses.
84
- 3. Use `registerFallbackValue` to register a default value for a type used as an argument in a mock method.
85
- 4. Use `when(() => mock.method()).thenReturn(value)` to stub method calls, and `thenThrow(error)` to stub errors.
86
- 5. Use `verify(() => mock.method())` to check if a method was called; use `verifyNever(() => mock.method())` to check it was never called.
87
- 6. Always stub async methods (returning `Future` or `Future<void>`) with `thenAnswer((_) async {})` or `thenReturn(Future.value(...))`.