flutter_bloc_app_template
flutter_bloc_app_template copied to clipboard
The project of the empty template with Flutter has built the basic framework to realize the functions of internationalization, theme peeling etc.
flutter-bloc-app-template 🤖
This is a basic Flutter project template that uses the BLoC pattern architecture for state management. It is a good starting point for creating a new Flutter app that uses BLoC for state management.
This template is focused on delivering a project with static analysis and continuous integration already in place.
How to use 🐾
Just click on button to create a new repo starting from this template.
Features 🦄
- Theme support
- BLoC pattern bloc
- Service Locator using get_it
- Localization using intl
- CI Setup with GitHub Actions
- Codecov Setup with GitHub Actions
- Unit test coverage
Configuration
The template has 3 flavors:
- dev
- prod
- qa
The template has 3 build variants:
- debug
- profile
- release
For example dev configuration for Android Studio looks like:
Android Screenshots
iOS Screenshots
Static Analysis 🔍
This template is using analyzer
Supported Lint Rules
Supported Dart Code Metrics
Dart Lint
CI ⚙️
This template is using GitHub Actions as CI. You don't need to setup any external service and you should have a running CI once you start using this template.
How to build 🛠️
The Project uses FlutterGen to generate localizations, dependencies and mocks
Activate flutter_gen using dart pub global activate flutter_gen command if you haven't done that before.
after add export PATH="$PATH":"$HOME/.pub-cache/bin" to bash_profile
# clean project, install dependencies & generate sources
make
# generate localizations, dependencies, image assets, colors, fonts
make gen
# generate localizations
make localize
# analyze the project
check
Reminders 🧠
Change name in pubspec.yaml file
Remove anything you don't need
Configure analysis_options.yaml for your needs
Contributing 🤝
Feel free to open a issue or submit a pull request for any bugs/improvements.
License 📄
This template is licensed under the MIT License - see the License file for details. Please note that the generated template is offering to start with a MIT license but you can change it to whatever you wish, as long as you attribute under the MIT terms that you're using the template.