To-Do List (Flutter App)
To do list Etiqa Mobile App Developer Flutter Assessment
➤ The app’s state management, navigation & dependencies management is rely on GetX Package and Shared Preferences for local storage.
Screenshots
Demo
Key Features
- Create To-Do
- Edit To-Do
- Delete To-Do
- Mark To-Do as Complete
Simple validations:
- Title must not be empty
- Start date must be smaller than or equal to end date
- End Date must be larger than or equal to start date
Project Architecture
- GetX Pattern by kauemurakami
- Project Structure:
├── lib
│ ├── data
│ │ └── local_storage
│ │ └── models
│ ├── modules
│ │ └── to_do_list
│ │ └── bindings
│ │ └── controllers
│ │ └── views
│ ├── routes
│ └── utils
│ └── widgets
│
└── test
Unit Test
- Simple unit tests are created
- To execute all the unit tests, run
flutter test
Continuous Integration
- A simple CI/CD was setup with CodeMagic. New build will be triggered by every new push to main branch for this repository.
Setup Project
- Clone repository
git clone https://github.com/weeyc/to-do-list.git
- To run the app, simply write
flutter pub get
flutter run