# 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 - [ ] Create a new Flutter project with Flame integration - [ ] Set up `.gitignore` and push initial commit to Git server - [ ] Add and link `SCHEME_COLORS.md` - [ ] Configure basic folder structure: `/assets`, `/audio`, `/images`, `/game`, `/ui`, `/utils` - [ ] Add initial dependencies in `pubspec.yaml`: - `flame` - `flutter_bloc` or `provider` - `audioplayers` or `just_audio` - `flutter_vibrate` --- ### Phase 2: Basic Game Structure **Goal**: Build the main game loop and structure - [ ] Create main `ZenTapGame` class extending `FlameGame` - [ ] Add tap detection and response logic - [ ] Create main menu screen with “Play” and “Zen Mode” buttons - [ ] Implement navigation between menu and game scene - [ ] Use colors from `SCHEME_COLORS.md` for UI and background --- ### Phase 3: Bubble Pop Mode (MVP) **Goal**: Implement the first interactive game mode - [ ] Design tappable bubble component with: - Animation on tap - Pop sound effect - Particle effects - [ ] Add score counter ("Relaxation Points") - [ ] Include game timer or infinite mode - [ ] Integrate background music #### 🎨 Audio-Visual Asset List - [ ] Bubble popping sound - [ ] Ambient background music (loop) - [ ] Bubble sprite or animation sheet - [ ] Pop animation particles --- ### Phase 4: UI and UX Polish **Goal**: Enhance user experience and interface - [ ] Add relaxing background animations (e.g. flowing gradient) - [ ] Create settings menu (toggle music, haptics) - [ ] Add simple tutorial overlay - [ ] Use vibration on tap (optional toggle) --- ### Phase 5: Zen Mode **Goal**: Create a no-score, purely aesthetic interaction mode - [ ] Disable score and timer - [ ] Enable fluid background animations - [ ] 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) - [ ] Implement donation button - [ ] 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