A cozy Android virtual pet game where players care for a cute pixel-art fish by feeding it, cleaning its tank, playing mini-games, and decorating its environment as the fish grows and levels up.
Pixel Fish Tank is a Tamagotchi-style virtual pet game for Android. Take care of your fish by feeding it, keeping its tank clean, playing mini-games to earn coins, and decorating the tank to make your fish happy. Watch as your fish grows and levels up through your care!
Watch Pixel Fish Tank in action! See all the features, gameplay, and adorable pixel-art fish:
- Play Games Services v2 automatic platform authentication
- Sidekick-visible achievements for care, progression, streaks, collecting, and mini-games
- Global leaderboards for all six mini-games
- Native achievement and leaderboard screens in Settings
- Production safeguards that require complete Play Games resource configuration
See Play Games Sidekick release setup for the Play Console checklist.
- Virtual Fish System: Manage your fish's hunger, cleanliness, happiness, level, and XP
- Unlimited Leveling System: Progressive XP requirements with unlimited levels - each level requires more XP than the last
- Level 1 โ 2: 100 XP
- Level 2 โ 3: 300 XP total (200 more)
- Level 3 โ 4: 600 XP total (300 more)
- Level 4 โ 5: 1,000 XP total (400 more)
- And so on, with no level cap!
- Tank Interaction: Feed your fish and clean its tank to keep it healthy
- Six Mini-Games: Bubble Pop, Timing Bar, Cleanup Rush, Food Drop, Memory Shells, and Fish Follow, each with difficulty levels
- Fish Color Skins: Unlock and equip new fish colors (Ocean Blue, Coral Pink, Mint Green, Royal Gold) with coins
- Decoration System: Customize your tank with various decorations
- Daily Tasks: Complete daily tasks to maintain streaks and earn rewards
- Backup & Restore: Export and import your game progress with JSON validation
- Offline-First: Fully playable without an internet connection
- Small Fish Status Widget (2x1): Quick fish status with mood, hunger bar, level & coins
- Medium Fish Status Widget (3x2): Detailed view with all three stat progress bars
- Streak Counter Widget (2x2): Fire emoji with current streak and best streak record
- Daily Tasks Widget (4x3): Task checklist with completion status and dynamic messages
- Beautiful pastel gradient backgrounds with color-coded progress bars
- Real-time updates when game state changes
- All widgets clickable to open the app
- Built with Jetpack Compose for modern UI
- Uses DataStore for local data persistence
- Firebase integration for crash reporting, analytics, and messaging
- Comprehensive analytics tracking for user interactions and gameplay patterns
- Event tracking for game actions, mini-games, progression, and app usage
- Material Design 3 theming
- Traditional RemoteViews for enhanced widget design
- Smooth animations and pixel-art graphics
- High score tracking for all mini-games
- Android Studio Hedgehog (2023.1.1) or later
- Android SDK 24 (Android 7.0) or higher
- JDK 17 or higher
- Kotlin 1.9+
- Clone the repository:
git clone http://10.0.0.129:3000/charles/Pixel-Fish-Tank.git
cd Pixel-Fish-Tank-
Open the project in Android Studio
-
Add your
google-services.jsonfile:- Get your Firebase configuration file from the Firebase Console
- Place it in
app/google-services.json - Note: This file is gitignored for security reasons
-
Sync Gradle files and build the project
-
Run on an emulator or physical device
./gradlew assembleDebug # Build debug APK
./gradlew assembleRelease # Build release APKVirtual_Pet/
โโโ app/
โ โโโ src/main/
โ โ โโโ java/com/charles/virtualpet/fishtank/
โ โ โ โโโ data/ # Data layer (repositories, stores)
โ โ โ โโโ domain/ # Business logic (ViewModels, models)
โ โ โ โโโ ui/ # UI components and screens
โ โ โ โโโ MainActivity.kt
โ โ โโโ res/ # Resources (drawables, values)
โ โ โโโ AndroidManifest.xml
โ โโโ build.gradle.kts
โ โโโ google-services.json # Firebase config (not in repo)
โโโ assets/ # Game assets (images, sprites)
โโโ build.gradle.kts
โโโ settings.gradle.kts
โโโ docs/ # Documentation (see docs/ folder)
- Language: Kotlin
- UI Framework: Jetpack Compose
- Architecture: MVVM (Model-View-ViewModel)
- Dependency Injection: Manual (Factory pattern)
- Data Persistence: DataStore Preferences
- Navigation: Navigation Compose
- Firebase: Crashlytics, Analytics, Messaging, Performance
- Google Play Games cloud: automatic Saved Games sync and Recall account recovery
- Build System: Gradle with Kotlin DSL
The app follows MVVM architecture:
- Data Layer:
GameStateRepository,DecorationStore- Handle data persistence - Domain Layer:
GameViewModel,MoodCalculator,StatDecayCalculator- Business logic - UI Layer: Compose screens and components - Presentation
- Art Style: Pixel art with cozy, chibi-style fish
- Theme: Material Design 3
- Color Palette: Aquarium-inspired blues and greens
- Animations: Smooth, gentle animations for a relaxing experience
- Follow Kotlin coding conventions
- Use meaningful variable and function names
- Add comments for complex logic
- Keep functions focused and single-purpose
./gradlew test # Run unit tests
./gradlew connectedAndroidTest # Run instrumented testsSee CONTRIBUTING.md for guidelines on how to contribute to this project.
See LICENSE for license information.
See docs/PRIVACY_POLICY.md for our privacy policy.
- Product Requirements Document - Detailed product specifications
- Changelog - Version history and changes
Check the issue tracker for known bugs and planned features.
- โ Fish Color Skins - unlock and equip new fish colors with coins
- โ Beautiful home screen widgets (4 types)
- โ Three mini-games with difficulty levels
- โ Backup & restore functionality
- โ Enhanced widget system with RemoteViews
- โ High score tracking
- โ Unlimited levels with progressive XP requirements
- โ Firebase Analytics integration with comprehensive event tracking
- โ Core fish care mechanics
- โ Decoration system
- โ Daily tasks and streaks
- โ Firebase integration
- Screenshot sharing
- Additional fish species/shapes
- More mini-games
- Multiple tanks
- iOS version
Charles
- Inspired by classic Tamagotchi virtual pet games
- Built with love for cozy, relaxing gameplay experiences
Made with โค๏ธ for virtual pet enthusiasts