MVVM(Model view viewmodel architecture) - Software architectural pattern that facilitates the separation of the development of the graphical user interface (the view) – be it via a markup language or GUI code.
- Real-Time Group Messaging (Discussion).
- Blog Section.
- Course Selection.
- Classroom.
- Firebase: authentication | database | Real-time messaging | Storage.
- ViewModel: Stores UI-related data that isn't destroyed on app rotations
- LiveData: To build data objects that notify views when the underlying database changes.
- Data Binding with binding adapters
- Navigation with the SafeArgs plugin
- Multidex support: Below is Multidex Process illustration.
- OkHttp interceptor It logs
HTTP
request and response data.
Glide - Glide is a fast and efficient open source media management and image loading framework for Android that wraps media decoding, memory and disk caching.
YouTube Player - YouTube Player library for Android and Chromecast, stable and customizable. - PierfrancescoSoffritti/android-youtube-player.
Retrofit - A REST
Client for Java and Android. It makes it relatively easy to retrieve and upload JSON
(or other structured data) via a REST based webservice. In Retrofit you configure which converter is used for the data serialization.
Kotlin Coroutines - Coroutines are computer program components that generalize subroutines for non-preemptive multitasking, by allowing execution to be suspended and resumed. Coroutines are well-suited for implementing familiar program components such as cooperative tasks, exceptions, event loops, iterators, infinite lists and pipes.