/Android-Chatroom

Create chatrooms and chat

Primary LanguageKotlinMIT LicenseMIT

Android-Chatroom

Firebase Chat Application where you can create chatrooms, join and leave

This is an application based on modern Android application tech-stacks and MVVM architecture. This project is for focusing especially on the Cloud Firestore and other features of Firebase

Tech stack & Open-source libraries

  • Minimum SDK level 21
  • Kotlin based, Coroutines
  • Dagger-Hilt (alpha) for dependency injection.
  • JetPack
    • LiveData - notify domain layer data to views.
    • Lifecycle - dispose of observing data when lifecycle state changes.
    • ViewModel - UI related data holder, lifecycle aware.
  • Architecture
    • MVVM Architecture
    • Repository pattern
  • Navigation
  • Glide
  • Material-Components
  • Circular Image View

Architecture

App is based on MVVM architecture and a repository pattern.

Screenshots

login-screen signup-screen chat-screen create-chatroom-screen profile-screen chatroom-screen  chatroom-details-screen  map-screen

Getting Started

  • Clone or download repository as a zip file.
  • Open project in Android Studio.
  • Create Firebase project.
  • Paste google-services.json file in app/ folder
  • In Firebase console enable services Authentication, Cloud Firestore and Storage
  • Finally run the app SHIFT+F10.

TODO

  • Realtime GPS updates of user location
  • Directions with Google Directions API and much more