Flutter application for counting daily calories and macronutrients based on custom user parameters.
The main focus of this project was on using local storage (shared preferences and sqlite) and displaying data in graphs with easy and understandable UI in Flutter. User parameters are stored with shared preferences and meals are stored using SQLite. State management used in this project is Provider with ChangeNotifier.
- Clone the repository using the link below:
https://github.com/kforjan/diet-control.git
- Go to the project root and execute the following commands:
flutter pub get
flutter run
- provider - state management
- sqflite - SQLite for Flutter, local data cache
- shared_preferences - local data cache
- path - cross-platform path manipulation
- fl_chart - chart widgets
- Input and storage of custom user parameters locally (weight, height, age...)
- Automatic determination of recommended daily calories
- Adding and storing custom meals locally (name of the meal and macronutrients)
- Deletion of meals from local memory
- Resetting daily input of calories every 24h
- Deletion of the user and user data
- Display of daily intake using the bar and pie chart
- Folder structure
- Online user storage
- BloC state management (optional)
