Flutter Boilerplates
This page is a collection of Flutter boilerplates and templates to kickstart your app development.
Boilerplates and Starter Kits
Flutter MVVM Riverpod Starter ↗
A streamlined Flutter starter template that combines the MVVM architecture, Riverpod state management, and Supabase backend to kickstart your project. Ideal for indie hackers and solo developers.
- 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.
ProKit ↗
Prokit offers a massive collection of high-quality UI kits and full apps, making it the ideal starting point for any Android or iOS development project. It provides a variety of app UI kits, ensuring you'll find the perfect match for your needs.
- 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
Casual Games Toolkit ↗
The Casual Games Toolkit, introduced at I/O 2022, is designed to empower developers to create casual games using Flutter. This toolkit offers a comprehensive starter kit that combines templates, best practices, and resources to simplify game development. It also includes credits for ads and cloud services to help developers monetize their games effectively.
- Sound
- Music
- Main menu screen
- Settings
- Ads (AdMob)
- In-app purchases
- Game services (Game Center & Google Play Games Services)
- Crash reporting (Firebase Crashlytics)
mvp-boilerplate ↗
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
- Backend Configuration (Supabase): Fully configured authentication system with user metadata support, development environment ready out of the box, instant local development setup
- 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 ↗
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, and developer productivity.
- State Management: Utilizing BLoC (Business Logic Component) and Hydrated Bloc — separates business logic from UI, enables persistent state preservation, facilitates easier testing and maintenance
- Dependency Management: Injectable and GetIt for dependency injection — reduces tight coupling between classes, enhances code reusability and modularity
- API and Authentication: REST and GraphQL integration, token renewal mechanisms, socket support, implemented using Dio and GraphQL libraries
- Code Generation: 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: Bloc Test for state management testing, Golden Toolkit for visual regression testing, Mocktail for creating mock objects
joshsoftware's flutter-boilerplate ↗
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.
- Ready to use
- MVVM based
- Network services
- Using Providers
- Modular
- Assets and custom Fonts
- Embedded custom URL screen
acelords's flutter-starter-kit ↗
This starter kit uses BLoC Pattern.
- 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
zubairehman's flutter-boilerplate-project ↗
This is a Flutter boilerplate project with MobX and Provider, it contains the minimal implementation required to create a new library or project. The boilerplate supports both web and mobile. You need to clone the appropriate branches.
- 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
E-Commerce UI KIT ↗
The E-Commerce UI Kit is a versatile solution for creating e-commerce applications on Android and iOS devices. With 32 unique screens featuring diverse UI layouts, this kit significantly reduces the time required to code front-end designs. It's designed for seamless integration with your back end.
- 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