This is a project that I will be working on while learning the fundamental stuff of the Flutter framework. Everything is self-learned here (for the moment I'm writing this doc at least), so if you think something's a bit off please inform me via minhtrang072121@gmail.com.
git clone https://github.com/beckachuu/I-prefer-not-to-name-this-right-now.git
cd I-prefer-not-to-name-this-right-now
flutter clean
flutter packages get
flutter packages upgrade
flutter run
Then click the "Run" button of the void main() in main.dart (remind me to rewrite this installation guide someday...)
-
Implemented:
- Software architecture: Clean architecture (Feature-first)
- Converting JSON string to an equivalent dart object and vice versa with json serializable
-
Todo:
- State management solution: Cubit (Why? As far as I know, it's more lightweight than Bloc and can handle more comlex state management than GetX)
- Performing CRUD operation using Dio and go rest api
- Implementing Interceptors, Global configuration and timeout for api calls
- Exception Handling with Dio interceptor, Dartz and freezed
- Dependency injection with get it
- Displaying error type to the user through the alert dialogs
This features list (and the project architecture) (and most of my starter code...) is referenced from https://github.com/SinaSys/flutter_go_rest_app
This project is under MIT License.