A native real-time messaging application built using Kotlin language with MVVM design pattern and Coroutines for managing background tasks and managing the flow of data. This app utilizes Firebase Firestore as data storage solution and Firebase Cloud Messaging for notifications.
Android_Chat_App.mp4
- Real-time messaging: Users can send and receive messages in real-time.
- Firebase Firestore: Data storage is handled by Firebase Firestore, providing a secure and fast way to store and retrieve data.
- Firebase Cloud Messaging: Notifications are handled by Firebase Cloud Messaging, allowing users to receive notifications even when the app is not open.
- MVVM architecture: The app follows the Model-View-ViewModel architecture, making it easy to maintain and scale.
- Coroutines: Coroutines are used for managing background tasks and managing the flow of data, making the app more efficient.
- Dagger Hilt: Dependency injection is handled by Dagger Hilt, making it easy to manage dependencies and improve testability.
- Jetpack components: Jetpack components such as ViewModel and LiveData are used for better performance and to make the app more responsive.
- Clone the repository:
git clone https://github.com/<username>/chat-app.git
- Import the project into Android Studio.
- Build and run the project.
- Open the app and sign in/ sign up
- Send and receive messages in real-time
- Receive notifications even when the app is not open
If you would like to contribute to the project, please fork the repository and create a pull request with your changes.