This is a FoodOrderApp project which uses the MVVM architecture and includes features such as displaying dishes, adding them to cart, and editing the cart. These features are implemented using Retrofit, Hilt, Data Binding, and Glide libraries, with data provided by a dummy API. The application also includes Firebase Authentication for user login.
The app includes the following features:
- Display dishes from a dummy API
- Add dishes to cart
- Edit cart
- Firebase Authentication for user login
- Repeat last order
- Surprise me
- Searching through the menu
To use the app, follow these steps:
-
Open the app on your Android device.
-
Login using your Google account.
-
Browse the menu to find dishes you want to order.
-
Add dishes to your cart.
-
Edit your cart as needed.
-
Use the "Repeat last order" feature to quickly order a previously ordered meal.
-
Use the "Surprise me" feature to randomly select a dish for you.
-
Use the search feature to find dishes by name or keyword.
FoodOrderApp.mp4
To install and run the app, follow these steps:
-
Clone or download the project code from the repository.
-
Open the project in Android Studio.
-
Find and include the Google Services JSON file for Firebase Authentication. (Instructions on how to obtain this file can be found in the Firebase Console documentation.)
-
Build and run the app on an Android emulator or device.
The following technologies and libraries were used in the development of this app:
- Kotlin
- MVVM architecture
- Retrofit
- Hilt
- Data Binding
- Glide
- Firebase Authentication
Note: This application is developed solely for educational purposes and will never be used for profit.
The UI design for this app was inspired by the work of Conceptzilla, whose original design can be found here. I want to thank them for their creativity and talent.