# Foodie
![Screenshot](https://user-images.githubusercontent.com/64270931/116750513-4261cd00-aa0b-11eb-830b-9df9a0150645.png)

## Main Goal

This app was developed as a side project. <br/>
The Users of this application can : <br/>
• Sign-up (Register) & Sign-in (Login) <br/>
• Reset their account password <br/>
• Search recipes by recipe categories (meal type, dish type) <br/>
• Find recipes by filtering by meal type, dish type and calorie range (min - max) <br/>
• Add / Remove a recipe to favorites <br/>
• Upload user photo to profile <br/>
• Edit their profile data (username, email, phone number) <br/>

<br/>

Other implementations: <br/>
• Personalised user greeting with their name according to what hour is it on home screen <br/>
• Personalised recipe results on home screen according to what hour is it

### Ideas for further development 
a) Research how a search with filters can be implemented for the Search Screen <br>
b) Allow users to have friends <br/>

### Programming Language 

[Kotlin](https://kotlinlang.org/)

## Architecture
Model - View - ViewModel (MVVM)

### Theme 

[Material Design](https://material.io/)

### Libraries
[Retrofit](https://square.github.io/retrofit/) <br/>
[Glide](https://github.com/bumptech/glide) <br/>
[Gson](https://github.com/google/gson) <br/>
[Firebase](https://firebase.google.com/) Authentication | Realtime Database | Storage <br/>
[Shimmer for Android](https://github.com/facebook/shimmer-android) Shimmer Effect while we wait for the data from the API
