The app is a part of my portfolio projects. It showcases my skills regarding developing Android apps.
You can download the app apk using this link.
- Dark mode
- Archive chats
- Minimal design
- Real-time communication using websockets
- Android Architecture Components
- Kotlin
- Data Binding
- Room (DB)
- Koin (DI)
- Retrofit
- Moshi
- Okhttp
The app uses Clean Architecture with MVVM design pattern. It's divided into 3 main modules.
Contains all the models. It's split into 2 packages.
-
Contains app models.
-
Contains repositories interfaces which are used by ViewModels and implemented in the
Data
module.
Contains repositories implementations and DataSources interfaces. It's split into 2 packages.
-
Contains interfaces to preform actions locally and implemented in the
Local
module. -
Contains interfaces to preform actions remotely and implemented in the
Remote
module.
Contains all the UI and business logic.
Contains Koin DI modules.
Contains gradle dependencies and app configuration.
Contains network data sources implementations.
Contains database data sources implementations.
- JDK 11
- Android SDK
- Android N (API 23)
- Latest Android SDK Tools and build tools.
./gradlew
Chatty is distributed under the terms of the Apache License (Version 2.0). See License for details.