LetsChat
LetsChat is a Sample Messaging Android application built to demonstrate the use of Modern Android development tools - (Kotlin, Coroutines, Flow, Dagger-Hilt, Architecture Components, MVVM, Room, Testing, Coil, DataStore) and Firebase
Install / Use
/learn @a914-gowtham/LetsChatQuality Score
Category
Development & EngineeringSupported Platforms
Tags
README
LetsChat
LetsChat is a Sample Messaging Android application built to demonstrate the use of Modern Android development tools - (Kotlin, Coroutines, Dagger-Hilt, Architecture Components, MVVM, Room, Coil) and Firebase
- Create a firebase project and replace the google-services.json file which you get from your firebase project console
- Following firebase services need to be enabled in the firebase console
- Phone Auth
- Cloud Firestore
- Realtime Database
- Storage
- Composite indexes should be created for contact query(link for enabling indexes could be found from logcat while using the app)
You can Install and test latest LetsChat app from below 👇
<p float="center"> <img src="demo_video.gif" /> </p>Features ✨
- One on one chat
- Group Chat
- Typing status for one on one and group chat
- Unread messages count
- Message status for failed,sent,delivered and seen
- Supported message types
- Text
- Voice
- Sticker and Gif
- Attachments
- Image
- Video - InProgress
- Notification actions for reply and mark as read
- Search users by username
Built With 🛠
- Kotlin - First class and official programming language for Android development.
- Coroutines & Flow - For asynchronous and more..
- Android Architecture Components - Collection of libraries that help you design quality, robust, testable, and maintainable apps.
- Navigation Component - Handle everything needed for in-app navigation with a single Activity.
- LiveData - Data objects that notify views when the underlying database changes.
- ViewModel - Stores UI-related data that isn't destroyed on UI changes.
- DataBinding - Generates a binding class for each XML layout file present in that module and allows you to more easily write code that interacts with views.Declaratively bind observable data to UI elements.
- WorkManager - WorkManager is an API that makes it easy to schedule deferrable, asynchronous tasks that are expected to run even if the app exits or the device restarts.
- Room - SQLite object mapping library.
- Dependency Injection -
- Dagger-Hilt - Standard library to incorporate Dagger dependency injection into an Android application.
- Hilt-ViewModel - DI for injecting
ViewModel.
- Firebase -
- Cloud Messaging - For Sending Notification to client app.
- Cloud Firestore - Flexible, scalable NoSQL cloud database to store and sync data.
- Cloud Storage - For Store and serve user-generated content.
- Authentication - For Creating account with mobile number.
- Kotlin Serializer - Convert Specific Classes to and from JSON.Runtime library with core serialization API and support libraries with various serialization formats.
- Coil-kt - An image loading library for Android backed by Kotlin Coroutines.
Related Skills
node-connect
341.0kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
84.4kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
341.0kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
commit-push-pr
84.4kCommit, push, and open a PR
