This page is a collection of Flutter boilerplates and templates.
Boilerplates and Starter Kits
- MVVM Architecture
- Maintain clean separation between UI, logic, and data.
- Easily testable components for scalable code.
- Riverpod State Management
- Type-safe and efficient state management.
- Simplifies dependency injection and state handling.
- Supabase Backend
- Integrated backend for authentication, database, and storage.
- Realtime data updates and RESTful APIs.
- Theming
- Built-in Dark/Light theme toggle.
- Fully customizable UI styles.
- Localization
- Multi-language support using Flutter's internationalization.
- Easy to extend for global reach.
- Authentication
- Supports Email/password and social login (Google, GitHub, etc.).
- Secure token-based authentication with Supabase.
- Declarative Routing
- Simplified navigation with go_router.
- Dynamic route guards and nested navigation support.
- E-commerce store app UI kit
- Bus and travel booking app UI kit
- Hotel booking app UI kit
- Clean code following Material Design Guidelines
- Easy-to-use, single code base for efficient development
- sound
- music
- main menu screen
- settings
- ads (AdMob)
- in-app purchases
- game services (Game Center & Google Play Games Services)
- crash reporting (Firebase Crashlytics)
A mobile and/or web boilerplate designed to streamline your startup's development process, covering all essential MVP needs with a robust, integrated solution.
App Features (Flutter)
- State Management: Powered by Riverpod for efficient and scalable state handling
- Routing: Seamless navigation using go_router
- UI Components:
- Pre-built authentication page supporting SSO and email/password login
- Ready-to-use home page template
- Integrated payments page
- Comprehensive widget testing setup with Mocktail for reliable UI testing
Backend Configuration (Supabase)
- Fully configured authentication system with user metadata support
- Development environment ready out of the box
- Instant local development setup to accelerate your project launch
Analytics Integration (Posthog)
- Unified analytics tracking across documentation, landing page, and application
- Comprehensive insights from a single analytics platform
Payment Solution (Stripe)
- Native Supabase and Flutter integration
- Pre-configured webhook support
- Seamless payment processing capabilities
Continuous Deployment (Github Actions)
- Automated release scripts for iOS, Android, and Web platforms
- Instant deploy previews for pull requests
- Pre-configured database branching strategy
- Streamlined release management workflow
Error Monitoring (Sentry)
- Comprehensive error tracking and reporting
- Real-time insights into application performance and issues
Flutter Advanced Boilerplate is a sophisticated project template designed to streamline and enhance Flutter application development. This boilerplate goes beyond a simple starter project, offering a robust, feature-rich foundation that addresses many common challenges in mobile app development.
The boilerplate is built around several key principles:
- Separation of concerns
- Type safety
- Performance optimization
- Maintainability
- Developer productivity
Key Architectural Highlights
State Management
Utilizing BLoC (Business Logic Component) and Hydrated Bloc, the boilerplate provides a powerful state management solution that:
- Separates business logic from UI
- Enables persistent state preservation
- Facilitates easier testing and maintenance
Dependency Management
The project implements:
- Injectable and GetIt for dependency injection
- Reduces tight coupling between classes
- Enhances code reusability and modularity
API and Authentication
Comprehensive API support includes:
- REST and GraphQL integration
- Token renewal mechanisms
- Socket support
- Implemented using Dio and GraphQL libraries
Code Generation
Productivity is maximized through:
- Freezed for data classes
- Artemis for GraphQL code generation
- Build Runner for automated code creation
Routing
AutoRouter provides:
- Strongly-typed argument passing
- Effortless deep-linking
- Reduced routing boilerplate
Testing
Robust testing capabilities with:
- Bloc Test for state management testing
- Golden Toolkit for visual regression testing
- Mocktail for creating mock objects
This boilerplate was made with the purpose of easy API integration and using clean architecture (MVVM) in mind. It has a Base Response Model which can be modified to suit different API structures. The networking layer consists of following features: Network connection check, Common loader, Common Error and Success Message, and Prettyfied Logs for easy debugging.
Features:
- Ready to use
- MVVM based
- Network services
- Using Providers
- Modular
- Assets and custom Fonts
- Embedded custom URL screen
This starter kit uses BLoC Pattern.
Features:
- Centralized place to manage your application's colors/branding (
lib > utils > styles
) - Centralized place to manage your application's constants/url/keys (
lib > utils > constants
) - BLoC Pattern when fetching and posting data over the internet.
- Logically & Naturally organized files & folders.
- api - hold all your common api concerns (ApiBaseHelper, ApiResponse, AppException)
- blocs - hold all your blocs (Streams - provide data to the views. relate to controllers in Laravel)
- models - hold all your models (relate to models in Laravel)
- repositories - hold all your repositories (CRUD operations)
- responses - hold all your responses
- utils - hold all your utility files
- views - hold all your views/ui (relate to views in Laravel)
- partials - hold all your commonly used widgets (ApiError, Loading)
- Google AdMob ready
- Firebase FCM ready
- Splash
- Login
- Home
- Routing
- Theme
- Dio
- Database
- MobX (to connect the reactive data of your application with the UI)
- Provider (State Management)
- Encryption
- Validation
- Code Generation
- User Notifications
- Logging
- Dependency Injection
- Dark Theme Support
- Multilingual Support
- Provider example
Templates
- Clean code with comments throughout
- Support for multiple languages
- Modern, clean design
- Powered by Animation Controller
- Responsive design for all device screens
- Easy-to-customize layouts
Snippets
- Snippets are divided into topics and groups such as Social Network, Button, AppBar.
- Tap a title to list all snippets within a topic or group.