https://github.com/linhnguyen-gt/new-flutter-bloc
✨ New clean architecture build with flutter
https://github.com/linhnguyen-gt/new-flutter-bloc
bloc dart dio flutter freezed
Last synced: 3 months ago
JSON representation
✨ New clean architecture build with flutter
- Host: GitHub
- URL: https://github.com/linhnguyen-gt/new-flutter-bloc
- Owner: linhnguyen-gt
- Created: 2023-07-11T03:19:01.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2025-05-12T13:27:11.000Z (5 months ago)
- Last Synced: 2025-05-12T14:47:30.128Z (5 months ago)
- Topics: bloc, dart, dio, flutter, freezed
- Language: Dart
- Homepage:
- Size: 167 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# new_flutter_bloc
A new Flutter project using BLoC architecture.
## Introduction
This project is a Flutter application utilizing the BLoC architecture for state management. It is designed to provide a clear and scalable project structure for Flutter applications.
## Requirements
- Flutter (latest version)
- Dart SDK >=3.4.3 <4.0.0## Installation
1. Clone this repository
2. Run `flutter pub get` to install dependencies
3. Create a `.env` file in the project root (see Environment Configuration below)## Environment Configuration
This project uses a `.env` file to manage environment variables. Make sure to create this file before running the application.
## Running the Application
To run the application in debug mode:
flutter run
## Development
### Rebuild
To regenerate auto-generated files:
flutter pub run build_runner watch
### Git hooks
This project uses [lefthook](https://github.com/evilmartians/lefthook) to manage git hooks. This helps maintain code quality and ensures consistency throughout the development process.
### Architecture and Technology
- State management:
- [bloc_small](https://pub.dev/packages/bloc_small) - Simplified BLoC implementation
- Navigation: [auto_route](https://pub.dev/packages/auto_route)
- Dependency Injection: [get_it](https://pub.dev/packages/get_it), [injectable](https://pub.dev/packages/injectable)
- HTTP Client: [dio](https://pub.dev/packages/dio)
- Data class generation: [freezed](https://pub.dev/packages/freezed)## Coding Standards
This project follows the official Dart style guide. I use `dart format` to ensure consistent code formatting. Additionally, I use `dart analyze` to catch potential issues early.