This application is a test case for some of the most recent android architecture components and recommendations, applied to a realistic use case, it consist of a replacement for a restaurant/bar menu allowing a user to not bother the waiter multiple times. The functionallities mostly mocked since there is not API but all menus and organization is controlled by the API data.
- Choose a service type (in restaurant or take away);
- Visualize multiple menus and sub-menus;
- Visualize menu item details;
- Add/remove/update items to a list to order;
- Visualize all items ordered;
- Pay for all item ordered;
The source of data is provided from a mock API that I developed in Node.js and hosted on Heroku.
Principal technologies used for the development of this project.
Technology | ABOUT |
---|---|
Kotlin | Concise programming language that fully supports Android development |
Coroutines | Powerful library for asynchronous programming |
Retrofit | Type safe HTTP client library |
Room | Library provides an abstraction layer over SQLite for data persistence on mobile device |
Dagger | Dependency injector |
Leak Canary | Memory leak detection library |
MVVM | Architectural pattern used for responsibility separation |