Chat for Android
Chat is a sample project that presents a modern, 2021 approach to Android application development.
📷
Screenshots
Project Tech-stack
- Tech-stack
- 100% Kotlin + Coroutines - perform background operations
- Flow - asynchronous stream library
- Retrofit - networking
- Jetpack
- Navigation - in-app navigation
- Lifecycle - perform an action when lifecycle state changes
- ViewModel - store and manage UI-related data in a lifecycle conscious way
- Room - store offline cache
- Hilt - dependency injection
- Glide - image loading library
- Modern Architecture
- Clean Architecture
- Single activity architecture ( with Navigation component)
- MVVM (presentation layer)
- Multi-module Architecture
- Android Architecture components (ViewModel, Navigation)
- Android KTX - Jetpack Kotlin extensions
- Testing
- Unit Tests (JUnit 4)
- Truth - assertion framework
- UI
- Material design
- Reactive UI
Preparation For Run
You first need to generate the local.properties
(replace YOUR_SDK_DIR with your actual android SDK directory) file and add BASE_URL
(replace baseUrl with your base url) line
sdk.dir=YOUR_SDK_DIR
BASE_URL="baseUrl"
Build
In Android Studio, use the "Open an existing Android Studio project", and select the main Chat
directory.
Alternatively use the ./gradlew build
command to build the project directly.
Build and run.