Skip to content

ntban15/eat-smart

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

EatSmart

An application for managing diets and searching recipes which meet certain critera. It also features real-time nutritional analysis of food images taken from device camera.

This application is developed in cooperation with a classmate for our school-based mobile development course.

Demo

EatSmart Demo

Screenshots

Features

  • Authentication with Facebook to store diets information
  • Many diet customizations, including name, diet type, excluded ingredients, calories, fat, carbs and protein.
  • Visual analysis of each diet by using progress circles.
  • Searching recipes based on diet customizations.
  • Details of each recipe, including source website and step-by-step instructions.
  • Adding and removing recipes with ease, either from diet management activity or recipes searching activity.
  • Many diets for each account. Only one is activated at a given time.
  • Real-time nutritional analysis of food images.

Applied Techniques

  • Clean Model-View-Presenter pattern with Dagger for dependency injection.
  • RecyclerView with StaggeredGridLayoutManager to obtain the look of Pinterest.
  • Using SnapHelper to snap items according to views.
  • Implementing OnLongClickListener to enable contextual menu when holding an item in RecyclerView.
  • Handling API calls with Retrofit.
  • Managing database with Firebase.

External Libraries, SDKs and APIs

Install and build

  • Clone the repo
  • Contact me for gradle.properties (which contains several API keys) and put it in root folder
  • Open the project in Android Studio
  • Build and run

Acknowledgements

  • Props to npkhoa2197 for his collaboration.
  • This guy for his instructions on RecyclerView basics.
  • And this guy for his detailed guide on SnapHelper.

About

Manage diets and search for recipes with ease!

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages