SwiftWave
A Fully Functional Online Chat Application Built on MVVM architecture using Kotlin + Jetpack Compose
Features
- Google Sign in Authentication
- Material3 Color Theming - App Themes itself according to the dominant color of the Wallpaper
- Offline Data Persistence - If the Device is offline, the app operates normally on cached data, when Data Access is available, app Syncs all the locally cached Changes to cloud again
- Send / Recieve Messages, Images or a Bundle of both
- Edit, Copy and Delete Messages or Image-Message Bundle
- Notifications for Realtime Message Updates
- Message Reactions - Both users can react to either recieved or sent messages using Emojis
- Set / View Bio
- Set / View Profile Picture
- Set / View Status/Story Updates ( Auto Deletes after 24hrs )
- Add / Remove Users from Favorites
- Block / Unblock Users
- Delete Users along with all the Chats
- Search For Specific Users
- Compose Animations for Better UX
Underhood Implementations-
- Firebase Authentication ( Google )
- Cloud FireStore NoSQL Database to Store User Data and Messages
- Firebase Storage to store Images ( Profile Pictures and Status Updates )
- FCM and OkHTTP For Realtime Notifications
- Coil Library for Image Loading and Caching
- Compose Animations
- Material3 ColorScheme
Screenshots and Clips -