# ZenTap Development Plan (Flutter + Flame) ## ๐Ÿ“ฆ Development Environment - **Framework**: Flutter with Flame game engine - **IDE**: Visual Studio Code with Git integration and Copilot - **Version Control**: Self-hosted Git server - **Color Scheme Reference**: See `SCHEME_COLORS.md` for branding and UI colors --- ## ๐Ÿšง Project Phases and Tasks ### Phase 1: Project Initialization **Goal**: Set up the project, environment, and dependencies - [x] Create a new Flutter project with Flame integration - [x] Set up `.gitignore` and push initial commit to Git server - [x] Add and link `SCHEME_COLORS.md` - [x] Configure basic folder structure: `/assets`, `/audio`, `/images`, `/game`, `/ui`, `/utils` - [x] Add initial dependencies in `pubspec.yaml`: - `flame` - `flutter_bloc` or `provider` (using `flutter_bloc`) - `audioplayers` or `just_audio` (using `just_audio`) - `flutter_vibrate` (using `vibration`) --- ### Phase 2: Basic Game Structure **Goal**: Build the main game loop and structure - [x] Create main `ZenTapGame` class extending `FlameGame` - [x] Add tap detection and response logic - [x] Create main menu screen with "Play" and "Zen Mode" buttons - [x] Implement navigation between menu and game scene - [x] Use colors from `SCHEME_COLORS.md` for UI and background --- ### Phase 3: Bubble Pop Mode (MVP) **Goal**: Implement the first interactive game mode - [x] Design tappable bubble component with: - Animation on tap - Pop sound effect - Particle effects - [x] Add score counter ("Relaxation Points") - [x] Include game timer or infinite mode - [x] Integrate background music #### ๐ŸŽจ Audio-Visual Asset List - [x] Bubble popping sound (using system sounds as placeholder) - [x] Ambient background music (loop) (framework implemented, placeholder) - [x] Bubble sprite or animation sheet (procedural generation) - [x] Pop animation particles --- ### Phase 4: UI and UX Polish **Goal**: Enhance user experience and interface - [x] Add relaxing background animations (e.g. flowing gradient) - [x] Create settings menu (toggle music, haptics) - [x] Add simple tutorial overlay - [x] Use vibration on tap (optional toggle) --- ### Phase 5: Zen Mode **Goal**: Create a no-score, purely aesthetic interaction mode - [x] Disable score and timer - [x] Enable fluid background animations - [x] Allow users to freely interact with bubbles/slime - [ ] Include option to switch music track or visual theme #### ๐ŸŽจ Additional Assets - [ ] Alternative ambient track(s) - [ ] Theme background images or color palettes - [ ] Slime or sand textures --- ### Phase 6: Monetization and Settings **Goal**: Add non-intrusive monetization and user customization - [ ] Integrate optional rewarded ads (e.g. for unlocking themes) - [x] Implement donation button - [x] Store user settings locally (theme, sound, haptics) --- ### Phase 7: Final Testing & Polish **Goal**: Stabilize the app and prepare for release - [ ] Test across multiple devices - [ ] Optimize asset sizes - [ ] Finalize all UI with color scheme - [ ] Conduct user feedback test sessions --- ### Phase 8: Release Preparation **Goal**: Prepare store listing and deployment pipeline - [ ] Create app icon and feature graphic - [ ] Draft store listing text and screenshots - [ ] Build signed release APK - [ ] Push release to Git server and tag version --- ## ๐Ÿงพ Notes - Update the asset list in each phase - Use `SCHEME_COLORS.md` consistently for all UI and theme decisions - Focus on low-latency, smooth animations for all interactions