@musashishao/agent-kit 1.0.0
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.
Potentially problematic release.
This version of @musashishao/agent-kit might be problematic. Click here for more details.
- package/.agent/.shared/ui-ux-pro-max/data/charts.csv +26 -0
- package/.agent/.shared/ui-ux-pro-max/data/colors.csv +97 -0
- package/.agent/.shared/ui-ux-pro-max/data/icons.csv +101 -0
- package/.agent/.shared/ui-ux-pro-max/data/landing.csv +31 -0
- package/.agent/.shared/ui-ux-pro-max/data/products.csv +97 -0
- package/.agent/.shared/ui-ux-pro-max/data/prompts.csv +24 -0
- package/.agent/.shared/ui-ux-pro-max/data/react-performance.csv +45 -0
- package/.agent/.shared/ui-ux-pro-max/data/stacks/flutter.csv +53 -0
- package/.agent/.shared/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -0
- package/.agent/.shared/ui-ux-pro-max/data/stacks/jetpack-compose.csv +53 -0
- package/.agent/.shared/ui-ux-pro-max/data/stacks/nextjs.csv +53 -0
- package/.agent/.shared/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -0
- package/.agent/.shared/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -0
- package/.agent/.shared/ui-ux-pro-max/data/stacks/react-native.csv +52 -0
- package/.agent/.shared/ui-ux-pro-max/data/stacks/react.csv +54 -0
- package/.agent/.shared/ui-ux-pro-max/data/stacks/shadcn.csv +61 -0
- package/.agent/.shared/ui-ux-pro-max/data/stacks/svelte.csv +54 -0
- package/.agent/.shared/ui-ux-pro-max/data/stacks/swiftui.csv +51 -0
- package/.agent/.shared/ui-ux-pro-max/data/stacks/vue.csv +50 -0
- package/.agent/.shared/ui-ux-pro-max/data/styles.csv +59 -0
- package/.agent/.shared/ui-ux-pro-max/data/typography.csv +58 -0
- package/.agent/.shared/ui-ux-pro-max/data/ui-reasoning.csv +101 -0
- package/.agent/.shared/ui-ux-pro-max/data/ux-guidelines.csv +100 -0
- package/.agent/.shared/ui-ux-pro-max/data/web-interface.csv +31 -0
- package/.agent/.shared/ui-ux-pro-max/scripts/core.py +258 -0
- package/.agent/.shared/ui-ux-pro-max/scripts/design_system.py +487 -0
- package/.agent/.shared/ui-ux-pro-max/scripts/search.py +76 -0
- package/.agent/ARCHITECTURE.md +225 -0
- package/.agent/CONTEXT.md +229 -0
- package/.agent/FEATURE_ROADMAP.md +435 -0
- package/.agent/PROMPT_TEMPLATES.md +261 -0
- package/.agent/agents/backend-specialist.md +263 -0
- package/.agent/agents/database-architect.md +226 -0
- package/.agent/agents/debugger.md +225 -0
- package/.agent/agents/devops-engineer.md +242 -0
- package/.agent/agents/documentation-writer.md +104 -0
- package/.agent/agents/explorer-agent.md +73 -0
- package/.agent/agents/frontend-specialist.md +556 -0
- package/.agent/agents/game-developer.md +162 -0
- package/.agent/agents/mobile-developer.md +377 -0
- package/.agent/agents/orchestrator.md +416 -0
- package/.agent/agents/penetration-tester.md +188 -0
- package/.agent/agents/performance-optimizer.md +187 -0
- package/.agent/agents/project-planner.md +403 -0
- package/.agent/agents/security-auditor.md +170 -0
- package/.agent/agents/seo-specialist.md +111 -0
- package/.agent/agents/test-engineer.md +158 -0
- package/.agent/rules/GEMINI.md +251 -0
- package/.agent/skills/api-patterns/SKILL.md +81 -0
- package/.agent/skills/api-patterns/api-style.md +42 -0
- package/.agent/skills/api-patterns/auth.md +24 -0
- package/.agent/skills/api-patterns/documentation.md +26 -0
- package/.agent/skills/api-patterns/graphql.md +41 -0
- package/.agent/skills/api-patterns/rate-limiting.md +31 -0
- package/.agent/skills/api-patterns/response.md +37 -0
- package/.agent/skills/api-patterns/rest.md +40 -0
- package/.agent/skills/api-patterns/scripts/api_validator.py +211 -0
- package/.agent/skills/api-patterns/security-testing.md +122 -0
- package/.agent/skills/api-patterns/trpc.md +41 -0
- package/.agent/skills/api-patterns/versioning.md +22 -0
- package/.agent/skills/app-builder/SKILL.md +75 -0
- package/.agent/skills/app-builder/agent-coordination.md +71 -0
- package/.agent/skills/app-builder/feature-building.md +53 -0
- package/.agent/skills/app-builder/project-detection.md +34 -0
- package/.agent/skills/app-builder/scaffolding.md +118 -0
- package/.agent/skills/app-builder/tech-stack.md +40 -0
- package/.agent/skills/app-builder/templates/SKILL.md +39 -0
- package/.agent/skills/app-builder/templates/astro-static/TEMPLATE.md +76 -0
- package/.agent/skills/app-builder/templates/chrome-extension/TEMPLATE.md +92 -0
- package/.agent/skills/app-builder/templates/cli-tool/TEMPLATE.md +88 -0
- package/.agent/skills/app-builder/templates/electron-desktop/TEMPLATE.md +88 -0
- package/.agent/skills/app-builder/templates/express-api/TEMPLATE.md +83 -0
- package/.agent/skills/app-builder/templates/flutter-app/TEMPLATE.md +90 -0
- package/.agent/skills/app-builder/templates/monorepo-turborepo/TEMPLATE.md +90 -0
- package/.agent/skills/app-builder/templates/nextjs-fullstack/TEMPLATE.md +82 -0
- package/.agent/skills/app-builder/templates/nextjs-saas/TEMPLATE.md +100 -0
- package/.agent/skills/app-builder/templates/nextjs-static/TEMPLATE.md +106 -0
- package/.agent/skills/app-builder/templates/nuxt-app/TEMPLATE.md +101 -0
- package/.agent/skills/app-builder/templates/python-fastapi/TEMPLATE.md +83 -0
- package/.agent/skills/app-builder/templates/react-native-app/TEMPLATE.md +93 -0
- package/.agent/skills/architecture/SKILL.md +55 -0
- package/.agent/skills/architecture/context-discovery.md +43 -0
- package/.agent/skills/architecture/examples.md +94 -0
- package/.agent/skills/architecture/pattern-selection.md +68 -0
- package/.agent/skills/architecture/patterns-reference.md +50 -0
- package/.agent/skills/architecture/trade-off-analysis.md +77 -0
- package/.agent/skills/bash-linux/SKILL.md +199 -0
- package/.agent/skills/behavioral-modes/SKILL.md +242 -0
- package/.agent/skills/brainstorming/SKILL.md +163 -0
- package/.agent/skills/brainstorming/dynamic-questioning.md +350 -0
- package/.agent/skills/clean-code/SKILL.md +201 -0
- package/.agent/skills/code-review-checklist/SKILL.md +109 -0
- package/.agent/skills/database-design/SKILL.md +52 -0
- package/.agent/skills/database-design/database-selection.md +43 -0
- package/.agent/skills/database-design/indexing.md +39 -0
- package/.agent/skills/database-design/migrations.md +48 -0
- package/.agent/skills/database-design/optimization.md +36 -0
- package/.agent/skills/database-design/orm-selection.md +30 -0
- package/.agent/skills/database-design/schema-design.md +56 -0
- package/.agent/skills/database-design/scripts/schema_validator.py +172 -0
- package/.agent/skills/deployment-procedures/SKILL.md +241 -0
- package/.agent/skills/doc.md +177 -0
- package/.agent/skills/docker-expert/SKILL.md +409 -0
- package/.agent/skills/documentation-templates/SKILL.md +194 -0
- package/.agent/skills/frontend-design/SKILL.md +396 -0
- package/.agent/skills/frontend-design/animation-guide.md +331 -0
- package/.agent/skills/frontend-design/color-system.md +311 -0
- package/.agent/skills/frontend-design/decision-trees.md +418 -0
- package/.agent/skills/frontend-design/motion-graphics.md +306 -0
- package/.agent/skills/frontend-design/scripts/accessibility_checker.py +183 -0
- package/.agent/skills/frontend-design/scripts/ux_audit.py +722 -0
- package/.agent/skills/frontend-design/typography-system.md +345 -0
- package/.agent/skills/frontend-design/ux-psychology.md +541 -0
- package/.agent/skills/frontend-design/visual-effects.md +383 -0
- package/.agent/skills/game-development/2d-games/SKILL.md +119 -0
- package/.agent/skills/game-development/3d-games/SKILL.md +135 -0
- package/.agent/skills/game-development/SKILL.md +167 -0
- package/.agent/skills/game-development/game-art/SKILL.md +185 -0
- package/.agent/skills/game-development/game-audio/SKILL.md +190 -0
- package/.agent/skills/game-development/game-design/SKILL.md +129 -0
- package/.agent/skills/game-development/mobile-games/SKILL.md +108 -0
- package/.agent/skills/game-development/multiplayer/SKILL.md +132 -0
- package/.agent/skills/game-development/pc-games/SKILL.md +144 -0
- package/.agent/skills/game-development/vr-ar/SKILL.md +123 -0
- package/.agent/skills/game-development/web-games/SKILL.md +150 -0
- package/.agent/skills/geo-fundamentals/SKILL.md +156 -0
- package/.agent/skills/geo-fundamentals/scripts/geo_checker.py +289 -0
- package/.agent/skills/i18n-localization/SKILL.md +154 -0
- package/.agent/skills/i18n-localization/scripts/i18n_checker.py +241 -0
- package/.agent/skills/lint-and-validate/SKILL.md +45 -0
- package/.agent/skills/lint-and-validate/scripts/lint_runner.py +172 -0
- package/.agent/skills/lint-and-validate/scripts/type_coverage.py +173 -0
- package/.agent/skills/mcp-builder/SKILL.md +176 -0
- package/.agent/skills/mobile-design/SKILL.md +394 -0
- package/.agent/skills/mobile-design/decision-trees.md +516 -0
- package/.agent/skills/mobile-design/mobile-backend.md +491 -0
- package/.agent/skills/mobile-design/mobile-color-system.md +420 -0
- package/.agent/skills/mobile-design/mobile-debugging.md +122 -0
- package/.agent/skills/mobile-design/mobile-design-thinking.md +357 -0
- package/.agent/skills/mobile-design/mobile-navigation.md +458 -0
- package/.agent/skills/mobile-design/mobile-performance.md +767 -0
- package/.agent/skills/mobile-design/mobile-testing.md +356 -0
- package/.agent/skills/mobile-design/mobile-typography.md +433 -0
- package/.agent/skills/mobile-design/platform-android.md +666 -0
- package/.agent/skills/mobile-design/platform-ios.md +561 -0
- package/.agent/skills/mobile-design/scripts/mobile_audit.py +670 -0
- package/.agent/skills/mobile-design/touch-psychology.md +537 -0
- package/.agent/skills/nestjs-expert/SKILL.md +552 -0
- package/.agent/skills/nextjs-best-practices/SKILL.md +203 -0
- package/.agent/skills/nodejs-best-practices/SKILL.md +333 -0
- package/.agent/skills/parallel-agents/SKILL.md +175 -0
- package/.agent/skills/performance-profiling/SKILL.md +143 -0
- package/.agent/skills/performance-profiling/scripts/lighthouse_audit.py +76 -0
- package/.agent/skills/plan-writing/SKILL.md +152 -0
- package/.agent/skills/powershell-windows/SKILL.md +167 -0
- package/.agent/skills/prisma-expert/SKILL.md +355 -0
- package/.agent/skills/python-patterns/SKILL.md +441 -0
- package/.agent/skills/react-patterns/SKILL.md +198 -0
- package/.agent/skills/red-team-tactics/SKILL.md +199 -0
- package/.agent/skills/seo-fundamentals/SKILL.md +129 -0
- package/.agent/skills/seo-fundamentals/scripts/seo_checker.py +219 -0
- package/.agent/skills/server-management/SKILL.md +161 -0
- package/.agent/skills/systematic-debugging/SKILL.md +109 -0
- package/.agent/skills/tailwind-patterns/SKILL.md +269 -0
- package/.agent/skills/tdd-workflow/SKILL.md +149 -0
- package/.agent/skills/testing-patterns/SKILL.md +178 -0
- package/.agent/skills/testing-patterns/scripts/test_runner.py +219 -0
- package/.agent/skills/typescript-expert/SKILL.md +429 -0
- package/.agent/skills/typescript-expert/references/tsconfig-strict.json +92 -0
- package/.agent/skills/typescript-expert/references/typescript-cheatsheet.md +383 -0
- package/.agent/skills/typescript-expert/references/utility-types.ts +335 -0
- package/.agent/skills/typescript-expert/scripts/ts_diagnostic.py +203 -0
- package/.agent/skills/ui-ux-pro-max/SKILL.md +351 -0
- package/.agent/skills/ui-ux-pro-max/data/charts.csv +26 -0
- package/.agent/skills/ui-ux-pro-max/data/colors.csv +97 -0
- package/.agent/skills/ui-ux-pro-max/data/icons.csv +101 -0
- package/.agent/skills/ui-ux-pro-max/data/landing.csv +31 -0
- package/.agent/skills/ui-ux-pro-max/data/products.csv +97 -0
- package/.agent/skills/ui-ux-pro-max/data/prompts.csv +24 -0
- package/.agent/skills/ui-ux-pro-max/data/react-performance.csv +45 -0
- package/.agent/skills/ui-ux-pro-max/data/stacks/flutter.csv +53 -0
- package/.agent/skills/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -0
- package/.agent/skills/ui-ux-pro-max/data/stacks/nextjs.csv +53 -0
- package/.agent/skills/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -0
- package/.agent/skills/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -0
- package/.agent/skills/ui-ux-pro-max/data/stacks/react-native.csv +52 -0
- package/.agent/skills/ui-ux-pro-max/data/stacks/react.csv +54 -0
- package/.agent/skills/ui-ux-pro-max/data/stacks/shadcn.csv +61 -0
- package/.agent/skills/ui-ux-pro-max/data/stacks/svelte.csv +54 -0
- package/.agent/skills/ui-ux-pro-max/data/stacks/swiftui.csv +51 -0
- package/.agent/skills/ui-ux-pro-max/data/stacks/vue.csv +50 -0
- package/.agent/skills/ui-ux-pro-max/data/styles.csv +59 -0
- package/.agent/skills/ui-ux-pro-max/data/typography.csv +58 -0
- package/.agent/skills/ui-ux-pro-max/data/ui-reasoning.csv +101 -0
- package/.agent/skills/ui-ux-pro-max/data/ux-guidelines.csv +100 -0
- package/.agent/skills/ui-ux-pro-max/data/web-interface.csv +31 -0
- package/.agent/skills/ui-ux-pro-max/scripts/core.py +257 -0
- package/.agent/skills/ui-ux-pro-max/scripts/design_system.py +487 -0
- package/.agent/skills/ui-ux-pro-max/scripts/search.py +76 -0
- package/.agent/skills/vulnerability-scanner/SKILL.md +276 -0
- package/.agent/skills/vulnerability-scanner/checklists.md +121 -0
- package/.agent/skills/vulnerability-scanner/scripts/security_scan.py +458 -0
- package/.agent/skills/webapp-testing/SKILL.md +187 -0
- package/.agent/skills/webapp-testing/scripts/playwright_runner.py +173 -0
- package/.agent/workflows/brainstorm.md +113 -0
- package/.agent/workflows/create.md +59 -0
- package/.agent/workflows/debug.md +103 -0
- package/.agent/workflows/deploy.md +176 -0
- package/.agent/workflows/enhance.md +63 -0
- package/.agent/workflows/orchestrate.md +237 -0
- package/.agent/workflows/plan.md +89 -0
- package/.agent/workflows/preview.md +80 -0
- package/.agent/workflows/status.md +86 -0
- package/.agent/workflows/test.md +144 -0
- package/.agent/workflows/ui-ux-pro-max.md +231 -0
- package/LICENSE +21 -0
- package/README.md +101 -0
- package/bin/cli.js +235 -0
- package/index.js +1 -0
- package/package.json +43 -0
|
@@ -0,0 +1,357 @@
|
|
|
1
|
+
# Mobile Design Thinking
|
|
2
|
+
|
|
3
|
+
> **This file prevents AI from using memorized patterns and forces genuine thinking.**
|
|
4
|
+
> Mechanisms to prevent standard AI training defaults in mobile development.
|
|
5
|
+
> **The mobile equivalent of frontend's layout decomposition approach.**
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## 🧠 DEEP MOBILE THINKING PROTOCOL
|
|
10
|
+
|
|
11
|
+
### This Process is Mandatory Before Every Mobile Project
|
|
12
|
+
|
|
13
|
+
```
|
|
14
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
15
|
+
│ DEEP MOBILE THINKING │
|
|
16
|
+
├─────────────────────────────────────────────────────────────────┤
|
|
17
|
+
│ │
|
|
18
|
+
│ 1️⃣ CONTEXT SCAN │
|
|
19
|
+
│ └── What are my assumptions for this project? │
|
|
20
|
+
│ └── QUESTION these assumptions │
|
|
21
|
+
│ │
|
|
22
|
+
│ 2️⃣ ANTI-DEFAULT ANALYSIS │
|
|
23
|
+
│ └── Am I applying a memorized pattern? │
|
|
24
|
+
│ └── Is this pattern REALLY the best for THIS project? │
|
|
25
|
+
│ │
|
|
26
|
+
│ 3️⃣ PLATFORM DECOMPOSITION │
|
|
27
|
+
│ └── Did I think about iOS and Android separately? │
|
|
28
|
+
│ └── What are the platform-specific patterns? │
|
|
29
|
+
│ │
|
|
30
|
+
│ 4️⃣ TOUCH INTERACTION BREAKDOWN │
|
|
31
|
+
│ └── Did I analyze each interaction individually? │
|
|
32
|
+
│ └── Did I apply Fitts' Law, Thumb Zone? │
|
|
33
|
+
│ │
|
|
34
|
+
│ 5️⃣ PERFORMANCE IMPACT ANALYSIS │
|
|
35
|
+
│ └── Did I consider performance impact of each component? │
|
|
36
|
+
│ └── Is the default solution performant? │
|
|
37
|
+
│ │
|
|
38
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
## 🚫 AI MOBILE DEFAULTS (FORBIDDEN LIST)
|
|
44
|
+
|
|
45
|
+
### Using These Patterns Automatically is FORBIDDEN!
|
|
46
|
+
|
|
47
|
+
The following patterns are "defaults" that AIs learned from training data.
|
|
48
|
+
Before using any of these, **QUESTION them and CONSIDER ALTERNATIVES!**
|
|
49
|
+
|
|
50
|
+
```
|
|
51
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
52
|
+
│ 🚫 AI MOBILE SAFE HARBOR │
|
|
53
|
+
│ (Default Patterns - Never Use Without Questioning) │
|
|
54
|
+
├─────────────────────────────────────────────────────────────────┤
|
|
55
|
+
│ │
|
|
56
|
+
│ NAVIGATION DEFAULTS: │
|
|
57
|
+
│ ├── Tab bar for every project (Would drawer be better?) │
|
|
58
|
+
│ ├── Fixed 5 tabs (Are 3 enough? For 6+, drawer?) │
|
|
59
|
+
│ ├── "Home" tab on left (What does user behavior say?) │
|
|
60
|
+
│ └── Hamburger menu (Is it outdated now?) │
|
|
61
|
+
│ │
|
|
62
|
+
│ STATE MANAGEMENT DEFAULTS: │
|
|
63
|
+
│ ├── Redux everywhere (Is Zustand/Jotai sufficient?) │
|
|
64
|
+
│ ├── Global state for everything (Isn't local state enough?) │
|
|
65
|
+
│ ├── Context Provider hell (Is atom-based better?) │
|
|
66
|
+
│ └── BLoC for every Flutter project (Is Riverpod more modern?) │
|
|
67
|
+
│ │
|
|
68
|
+
│ LIST IMPLEMENTATION DEFAULTS: │
|
|
69
|
+
│ ├── FlatList as default (Is FlashList more performant?) │
|
|
70
|
+
│ ├── windowSize=21 (Is it really needed?) │
|
|
71
|
+
│ ├── removeClippedSubviews (Always?) │
|
|
72
|
+
│ └── ListView.builder (Is ListView.separated better?) │
|
|
73
|
+
│ │
|
|
74
|
+
│ UI PATTERN DEFAULTS: │
|
|
75
|
+
│ ├── FAB bottom-right (Is bottom-left more accessible?) │
|
|
76
|
+
│ ├── Pull-to-refresh on every list (Is it needed everywhere?) │
|
|
77
|
+
│ ├── Swipe-to-delete from left (Is right better?) │
|
|
78
|
+
│ └── Bottom sheet for every modal (Is full screen better?) │
|
|
79
|
+
│ │
|
|
80
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
---
|
|
84
|
+
|
|
85
|
+
## 🔍 COMPONENT DECOMPOSITION (MANDATORY)
|
|
86
|
+
|
|
87
|
+
### Decomposition Analysis for Every Screen
|
|
88
|
+
|
|
89
|
+
Before designing any screen, perform this analysis:
|
|
90
|
+
|
|
91
|
+
```
|
|
92
|
+
SCREEN: [Screen Name]
|
|
93
|
+
├── PRIMARY ACTION: [What is the main action?]
|
|
94
|
+
│ └── Is it in thumb zone? [Yes/No → Why?]
|
|
95
|
+
│
|
|
96
|
+
├── TOUCH TARGETS: [All tappable elements]
|
|
97
|
+
│ ├── [Element 1]: [Size]pt → Sufficient?
|
|
98
|
+
│ ├── [Element 2]: [Size]pt → Sufficient?
|
|
99
|
+
│ └── Spacing: [Gap]pt → Accidental tap risk?
|
|
100
|
+
│
|
|
101
|
+
├── SCROLLABLE CONTENT:
|
|
102
|
+
│ ├── Is it a list? → FlatList/FlashList [Why this choice?]
|
|
103
|
+
│ ├── Item count: ~[N] → Performance consideration?
|
|
104
|
+
│ └── Fixed height? → Is getItemLayout needed?
|
|
105
|
+
│
|
|
106
|
+
├── STATE REQUIREMENTS:
|
|
107
|
+
│ ├── Is local state sufficient?
|
|
108
|
+
│ ├── Do I need to lift state?
|
|
109
|
+
│ └── Is global required? [Why?]
|
|
110
|
+
│
|
|
111
|
+
├── PLATFORM DIFFERENCES:
|
|
112
|
+
│ ├── iOS: [Anything different needed?]
|
|
113
|
+
│ └── Android: [Anything different needed?]
|
|
114
|
+
│
|
|
115
|
+
├── OFFLINE CONSIDERATION:
|
|
116
|
+
│ ├── Should this screen work offline?
|
|
117
|
+
│ └── Cache strategy: [Yes/No/Which one?]
|
|
118
|
+
│
|
|
119
|
+
└── PERFORMANCE IMPACT:
|
|
120
|
+
├── Any heavy components?
|
|
121
|
+
├── Is memoization needed?
|
|
122
|
+
└── Animation performance?
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
---
|
|
126
|
+
|
|
127
|
+
## 🎯 PATTERN QUESTIONING MATRIX
|
|
128
|
+
|
|
129
|
+
Ask these questions for every default pattern:
|
|
130
|
+
|
|
131
|
+
### Navigation Pattern Questioning
|
|
132
|
+
|
|
133
|
+
| Assumption | Question | Alternative |
|
|
134
|
+
|------------|----------|-------------|
|
|
135
|
+
| "I'll use tab bar" | How many destinations? | 3 → minimal tabs, 6+ → drawer |
|
|
136
|
+
| "5 tabs" | Are all equally important? | "More" tab? Drawer hybrid? |
|
|
137
|
+
| "Bottom nav" | iPad/tablet support? | Navigation rail alternative |
|
|
138
|
+
| "Stack navigation" | Did I consider deep links? | URL structure = navigation structure |
|
|
139
|
+
|
|
140
|
+
### State Pattern Questioning
|
|
141
|
+
|
|
142
|
+
| Assumption | Question | Alternative |
|
|
143
|
+
|------------|----------|-------------|
|
|
144
|
+
| "I'll use Redux" | How complex is the app? | Simple: Zustand, Server: TanStack |
|
|
145
|
+
| "Global state" | Is this state really global? | Local lift, Context selector |
|
|
146
|
+
| "Context Provider" | Will re-render be an issue? | Zustand, Jotai (atom-based) |
|
|
147
|
+
| "BLoC pattern" | Is the boilerplate worth it? | Riverpod (less code) |
|
|
148
|
+
|
|
149
|
+
### List Pattern Questioning
|
|
150
|
+
|
|
151
|
+
| Assumption | Question | Alternative |
|
|
152
|
+
|------------|----------|-------------|
|
|
153
|
+
| "FlatList" | Is performance critical? | FlashList (faster) |
|
|
154
|
+
| "Standard renderItem" | Is it memoized? | useCallback + React.memo |
|
|
155
|
+
| "Index key" | Does data order change? | Use item.id |
|
|
156
|
+
| "ListView" | Are there separators? | ListView.separated |
|
|
157
|
+
|
|
158
|
+
### UI Pattern Questioning
|
|
159
|
+
|
|
160
|
+
| Assumption | Question | Alternative |
|
|
161
|
+
|------------|----------|-------------|
|
|
162
|
+
| "FAB bottom-right" | User handedness? | Accessibility settings |
|
|
163
|
+
| "Pull-to-refresh" | Does this list need refresh? | Only when necessary |
|
|
164
|
+
| "Modal bottom sheet" | How much content? | Full screen modal might be better |
|
|
165
|
+
| "Swipe actions" | Discoverability? | Visible button alternative |
|
|
166
|
+
|
|
167
|
+
---
|
|
168
|
+
|
|
169
|
+
## 🧪 ANTI-MEMORIZATION TEST
|
|
170
|
+
|
|
171
|
+
### Ask Yourself Before Every Solution
|
|
172
|
+
|
|
173
|
+
```
|
|
174
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
175
|
+
│ ANTI-MEMORIZATION CHECKLIST │
|
|
176
|
+
├─────────────────────────────────────────────────────────────────┤
|
|
177
|
+
│ │
|
|
178
|
+
│ □ Did I pick this solution "because I always do it this way"? │
|
|
179
|
+
│ → If YES: STOP. Consider alternatives. │
|
|
180
|
+
│ │
|
|
181
|
+
│ □ Is this a pattern I've seen frequently in training data? │
|
|
182
|
+
│ → If YES: Is it REALLY suitable for THIS project? │
|
|
183
|
+
│ │
|
|
184
|
+
│ □ Did I write this solution automatically without thinking? │
|
|
185
|
+
│ → If YES: Step back, do decomposition. │
|
|
186
|
+
│ │
|
|
187
|
+
│ □ Did I consider an alternative approach? │
|
|
188
|
+
│ → If NO: Think of at least 2 alternatives, then decide. │
|
|
189
|
+
│ │
|
|
190
|
+
│ □ Did I think platform-specifically? │
|
|
191
|
+
│ → If NO: Analyze iOS and Android separately. │
|
|
192
|
+
│ │
|
|
193
|
+
│ □ Did I consider performance impact of this solution? │
|
|
194
|
+
│ → If NO: What is the memory, CPU, battery impact? │
|
|
195
|
+
│ │
|
|
196
|
+
│ □ Is this solution suitable for THIS project's CONTEXT? │
|
|
197
|
+
│ → If NO: Customize based on context. │
|
|
198
|
+
│ │
|
|
199
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
200
|
+
```
|
|
201
|
+
|
|
202
|
+
---
|
|
203
|
+
|
|
204
|
+
## 📊 CONTEXT-BASED DECISION PROTOCOL
|
|
205
|
+
|
|
206
|
+
### Think Differently Based on Project Type
|
|
207
|
+
|
|
208
|
+
```
|
|
209
|
+
DETERMINE PROJECT TYPE:
|
|
210
|
+
│
|
|
211
|
+
├── E-Commerce App
|
|
212
|
+
│ ├── Navigation: Tab (Home, Search, Cart, Account)
|
|
213
|
+
│ ├── Lists: Product grids (memoized, image optimized)
|
|
214
|
+
│ ├── Performance: Image caching CRITICAL
|
|
215
|
+
│ ├── Offline: Cart persistence, product cache
|
|
216
|
+
│ └── Special: Checkout flow, payment security
|
|
217
|
+
│
|
|
218
|
+
├── Social/Content App
|
|
219
|
+
│ ├── Navigation: Tab (Feed, Search, Create, Notify, Profile)
|
|
220
|
+
│ ├── Lists: Infinite scroll, complex items
|
|
221
|
+
│ ├── Performance: Feed rendering CRITICAL
|
|
222
|
+
│ ├── Offline: Feed cache, draft posts
|
|
223
|
+
│ └── Special: Real-time updates, media handling
|
|
224
|
+
│
|
|
225
|
+
├── Productivity/SaaS App
|
|
226
|
+
│ ├── Navigation: Drawer or adaptive (mobile tab, tablet rail)
|
|
227
|
+
│ ├── Lists: Data tables, forms
|
|
228
|
+
│ ├── Performance: Data sync
|
|
229
|
+
│ ├── Offline: Full offline editing
|
|
230
|
+
│ └── Special: Conflict resolution, background sync
|
|
231
|
+
│
|
|
232
|
+
├── Utility App
|
|
233
|
+
│ ├── Navigation: Minimal (stack-only possible)
|
|
234
|
+
│ ├── Lists: Probably minimal
|
|
235
|
+
│ ├── Performance: Fast startup
|
|
236
|
+
│ ├── Offline: Core feature offline
|
|
237
|
+
│ └── Special: Widget, shortcuts
|
|
238
|
+
│
|
|
239
|
+
└── Media/Streaming App
|
|
240
|
+
├── Navigation: Tab (Home, Search, Library, Profile)
|
|
241
|
+
├── Lists: Horizontal carousels, vertical feeds
|
|
242
|
+
├── Performance: Preloading, buffering
|
|
243
|
+
├── Offline: Download management
|
|
244
|
+
└── Special: Background playback, casting
|
|
245
|
+
```
|
|
246
|
+
|
|
247
|
+
---
|
|
248
|
+
|
|
249
|
+
## 🔄 INTERACTION BREAKDOWN
|
|
250
|
+
|
|
251
|
+
### Analysis for Every Gesture
|
|
252
|
+
|
|
253
|
+
Before adding any gesture:
|
|
254
|
+
|
|
255
|
+
```
|
|
256
|
+
GESTURE: [Gesture Type]
|
|
257
|
+
├── DISCOVERABILITY:
|
|
258
|
+
│ └── How will users discover this gesture?
|
|
259
|
+
│ ├── Is there a visual hint?
|
|
260
|
+
│ ├── Will it be shown in onboarding?
|
|
261
|
+
│ └── Is there a button alternative? (MANDATORY)
|
|
262
|
+
│
|
|
263
|
+
├── PLATFORM CONVENTION:
|
|
264
|
+
│ ├── What does this gesture mean on iOS?
|
|
265
|
+
│ ├── What does this gesture mean on Android?
|
|
266
|
+
│ └── Am I deviating from platform convention?
|
|
267
|
+
│
|
|
268
|
+
├── ACCESSIBILITY:
|
|
269
|
+
│ ├── Can motor-impaired users perform this gesture?
|
|
270
|
+
│ ├── Is there a VoiceOver/TalkBack alternative?
|
|
271
|
+
│ └── Does it work with switch control?
|
|
272
|
+
│
|
|
273
|
+
├── CONFLICT CHECK:
|
|
274
|
+
│ ├── Does it conflict with system gestures?
|
|
275
|
+
│ │ ├── iOS: Edge swipe back
|
|
276
|
+
│ │ ├── Android: Back gesture
|
|
277
|
+
│ │ └── Home indicator swipe
|
|
278
|
+
│ └── Is it consistent with other app gestures?
|
|
279
|
+
│
|
|
280
|
+
└── FEEDBACK:
|
|
281
|
+
├── Is haptic feedback defined?
|
|
282
|
+
├── Is visual feedback sufficient?
|
|
283
|
+
└── Is audio feedback needed?
|
|
284
|
+
```
|
|
285
|
+
|
|
286
|
+
---
|
|
287
|
+
|
|
288
|
+
## 🎭 SPIRIT OVER CHECKLIST (Mobile Edition)
|
|
289
|
+
|
|
290
|
+
### Passing the Checklist is Not Enough!
|
|
291
|
+
|
|
292
|
+
| ❌ Self-Deception | ✅ Honest Assessment |
|
|
293
|
+
|-------------------|----------------------|
|
|
294
|
+
| "Touch target is 44px" (but on edge, unreachable) | "Can user reach it one-handed?" |
|
|
295
|
+
| "I used FlatList" (but didn't memoize) | "Is scroll smooth?" |
|
|
296
|
+
| "Platform-specific nav" (but only icons differ) | "Does iOS feel like iOS, Android like Android?" |
|
|
297
|
+
| "Offline support exists" (but error message is generic) | "What can user actually do offline?" |
|
|
298
|
+
| "Loading state exists" (but just a spinner) | "Does user know how long to wait?" |
|
|
299
|
+
|
|
300
|
+
> 🔴 **Passing the checklist is NOT the goal. Creating great mobile UX IS the goal.**
|
|
301
|
+
|
|
302
|
+
---
|
|
303
|
+
|
|
304
|
+
## 📝 MOBILE DESIGN COMMITMENT
|
|
305
|
+
|
|
306
|
+
### Fill This at the Start of Every Mobile Project
|
|
307
|
+
|
|
308
|
+
```
|
|
309
|
+
📱 MOBILE DESIGN COMMITMENT
|
|
310
|
+
|
|
311
|
+
Project: _______________
|
|
312
|
+
Platform: iOS / Android / Both
|
|
313
|
+
|
|
314
|
+
1. Default pattern I will NOT use in this project:
|
|
315
|
+
└── _______________
|
|
316
|
+
|
|
317
|
+
2. Context-specific focus for this project:
|
|
318
|
+
└── _______________
|
|
319
|
+
|
|
320
|
+
3. Platform-specific differences I will implement:
|
|
321
|
+
└── iOS: _______________
|
|
322
|
+
└── Android: _______________
|
|
323
|
+
|
|
324
|
+
4. Area I will specifically optimize for performance:
|
|
325
|
+
└── _______________
|
|
326
|
+
|
|
327
|
+
5. Unique challenge of this project:
|
|
328
|
+
└── _______________
|
|
329
|
+
|
|
330
|
+
🧠 If I can't fill this commitment → I don't understand the project well enough.
|
|
331
|
+
→ Go back, understand context better, ask the user.
|
|
332
|
+
```
|
|
333
|
+
|
|
334
|
+
---
|
|
335
|
+
|
|
336
|
+
## 🚨 MANDATORY: Before Every Mobile Work
|
|
337
|
+
|
|
338
|
+
```
|
|
339
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
340
|
+
│ PRE-WORK VALIDATION │
|
|
341
|
+
├─────────────────────────────────────────────────────────────────┤
|
|
342
|
+
│ │
|
|
343
|
+
│ □ Did I complete Component Decomposition? │
|
|
344
|
+
│ □ Did I fill the Pattern Questioning Matrix? │
|
|
345
|
+
│ □ Did I pass the Anti-Memorization Test? │
|
|
346
|
+
│ □ Did I make context-based decisions? │
|
|
347
|
+
│ □ Did I analyze Interaction Breakdown? │
|
|
348
|
+
│ □ Did I fill the Mobile Design Commitment? │
|
|
349
|
+
│ │
|
|
350
|
+
│ ⚠️ Do not write code without completing these! │
|
|
351
|
+
│ │
|
|
352
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
353
|
+
```
|
|
354
|
+
|
|
355
|
+
---
|
|
356
|
+
|
|
357
|
+
> **Remember:** If you chose a solution "because that's how it's always done," you chose WITHOUT THINKING. Every project is unique. Every context is different. Every user behavior is specific. **THINK, then code.**
|