BrainTeasers is a comprehensive mobile puzzle game built with Flutter that challenges users with various brain training exercises and logic puzzles. The app features a diverse collection of interactive puzzles designed to develop logical thinking, attention, and memory skills.
- Logic Puzzles
- Memory Games
- Physics-based Challenges
- Word Games
- Math Problems
- Pattern Recognition
- Visual Puzzles
- Attention Training
- Card Matching
- Pattern Recall
- Balance Ball Physics
- Word Search
- Number Grid
- Circuit Path
- Chain Reaction
- Equation Builder
- Color Harmony
- Multiple Object Tracking
- Change Blindness
- And more...
- Offline gameplay
- Progress tracking
- Achievement system
- Performance statistics
- Daily challenges
- Difficulty progression
- Score tracking
- Local data storage
- Flutter/Dart
- Flame Game Engine for physics-based puzzles
- SQLite (via Drift) for local data storage
flame
: Game engine for 2D gamesflame_forge2d
: Physics enginedrift
: SQLite databasego_router
: Navigationhooks_riverpod
: State managementflutter_animate
: Animationsgoogle_fonts
: Typography- Additional UI libraries for enhanced visuals
- Clean Architecture principles
- BLoC pattern for state management
- SQLite for local data persistence
- Component-based game design
- Flutter SDK
- Android Studio or VS Code
- Android SDK for Android deployment
- Xcode for iOS deployment
- Clone the repository:
git clone https://github.com/TaalayDev/brain_teasers.git
- Install dependencies:
flutter pub get
- Generate necessary files:
flutter pub run build_runner build
- Run the application:
flutter run
lib/
βββ components/ # Reusable UI components
βββ db/ # Database configurations and models
βββ games/ # Individual game implementations
βββ l10n/ # Localization files
βββ providers/ # State management providers
βββ router/ # Navigation configuration
βββ screens/ # Main app screens
βββ theme/ # App theming
βββ utils/ # Helper functions and utilities
- Create a new game file in
lib/games/
- Implement the game logic using provided base classes
- Add the game type to the database seeder
- Update the puzzle screen to handle the new game type
The app uses several tables to manage game data:
- PuzzleCategories: Stores puzzle categories
- Puzzles: Individual puzzle definitions
- UserProgress: Player progress tracking
- Achievements: Achievement definitions
- UserAchievements: Player achievements
- Settings: App configuration
- Fork the repository
- Create a feature branch
- Commit your changes
- Push to the branch
- Create a Pull Request
- Flame Game Engine - https://flame-engine.org/
- Flutter Team - https://flutter.dev/
- Icons by Flutter Vector Icons
- Online multiplayer support
- Cloud save functionality
- Additional puzzle categories
- Social features
- Leaderboards