AvengersChat is a demo application based on modern Android tech stacks and Stream Chat SDK.

Overview

Avengers Chat

License API API

AvengersChat is a demo application based on modern Android tech stacks and Stream Chat SDK.

Previews

Download

Go to the Releases to download the latest APK.

Stream Chat SDK

AvengersChat has been built with Stream Chat SDK for implementing messaging systems.

Tech stack & Open source libraries

  • Minimum SDK level 21.
  • 100% Kotlin based + Coroutines + Flow for asynchronous.
  • Hilt for dependency injection.
  • JetPack
    • Lifecycle - dispose observing data when lifecycle state changes.
    • ViewModel - UI related data holder, lifecycle aware.
    • Room Persistence - construct database.
    • App Startup - Provides a straightforward, performant way to initialize components at application startup.
  • Architecture
    • MVVM Architecture (View - DataBinding - ViewModel - Model)
    • Bindables - Android DataBinding kit for notifying data changes to UI layers.
    • Repository pattern
  • Material Design & Animations - Design system created by Google to help teams build high-quality digital experiences.
  • Retrofit2 & OkHttp3 - Construct the REST APIs and paging network data.
  • Sandwich - Construct lightweight http API response and handling error responses.
  • Moshi - A modern JSON library for Kotlin and Java.
  • Coil - Image loading for Android backed by Kotlin Coroutines.
  • TransformationLayout - implementing transformation motion animations.
  • android-youtube-player - YouTube Player library for Android and Chromecast, stable and customizable.
  • DiscreteScrollView - Implementing a scrollable list of items.
  • Timber - Logging.

Supported features

  • Light and Dark themes.
  • Different color themes by a chosen character.
  • 100% offline mode supports.
  • Live stream chat example.
  • Channel and message lists.
  • Direct message and group messages.
  • Mentioned message list.
  • Custom emoji reactions.
  • User online/offline status.
  • User last active date.
  • User info & direct message dialogs.
  • Visual animations like transition.
  • And a lot of features by Stream Android SDK!

TODO

Anyone can contribute to our open source project! Please kindly read this Contributing Guideline before contributing to our project. 😎

  • Creating group chats by selecting users.
  • Access user info dialog everywhere.
  • Login with a new custom hero.
  • Push notifications for new messages.
  • Add unit test cases for all business logic.

Chat screenshots

If you find some funny moments on this demo application, feel free to join and share that moment in this thread!

Architecture

architecture-android-stream

MAD Score

summary

Find this repository useful? πŸ’™

Support it by joining stargazers for this repository. ⭐

License

Copyright 2021 Stream.IO, Inc. All Rights Reserved.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
You might also like...
A Chat-Bot Android Application
A Chat-Bot Android Application

Sekobanashi_App A Chat-Bot Android Application. Features Sekobanashi is a chat-bot/assistant android application where the user can chat with one of t

A open chat application for intradepartmental communications

A open chat application for intradepartmental communications. Made with πŸ’, by the Google Developers Student Club, Department of Computer Science, University of Delhi, under the Android Study Jams program 2020-21

A private-chat-only Android App for Secure Scuttlebutt
A private-chat-only Android App for Secure Scuttlebutt

Tremola README Tremola is a Secure Scuttlebutt (SSB) client for Android that only supports private chat. Tremola aims at having the same functionality

A chat app for Android written in Kotlin using MVVM.
A chat app for Android written in Kotlin using MVVM.

Chat App Android About A chat app for Android written in Kotlin using MVVM. Features Authentication: Email and password Google Auth Reset Password Sen

A chat app for Android written in Kotlin using MVVM.
A chat app for Android written in Kotlin using MVVM.

Chat App Android About A chat app for Android written in Kotlin using MVVM. Features Authentication: Email and password Google Auth Reset Password Sen

Wurst Plus 3 Chat Server

Wurst Plus 3 Chat Server This is a server for wurst + 3! Ideas/TODO Friend requests Secure key for clients DMs Global Chat Friend's Online Color/rainb

Simple chat box written in kotlin, requires a redis server
Simple chat box written in kotlin, requires a redis server

Chat Box A simple chat box written in kotlin which requires a redis server to be used. Features Command Support Online User storage in Redis Easy to u

Fire Chat
Fire Chat

Fire Chat A one-to-one chat app (similar to WhatsApp) built using Kotlin and Firebase. Sceenshots Whenever a user will enter the app a registration pa

Jetchat is a sample chat app built with Jetpack Compose.
Jetchat is a sample chat app built with Jetpack Compose.

Jetchat sample Jetchat is a sample chat app built with Jetpack Compose. To try out this sample app, you need to use Android Studio Arctic Fox You can

Releases(1.1.0)
  • 1.1.0(Sep 27, 2022)

    AvengersChat version 1.1.0 was released πŸŽ‰

    What's Changed

    • Refactor layouts and remove unused resources by @skydoves in https://github.com/GetStream/AvengersChat/pull/17
    • Rename package names by @skydoves in https://github.com/GetStream/AvengersChat/pull/18
    • Bump Stream SDK to 4.27.0 by @skydoves in https://github.com/GetStream/AvengersChat/pull/19
    • Bump Stream Chat SDK to 4.28.2 and clean up other dependencies by @skydoves in https://github.com/GetStream/AvengersChat/pull/20
    • Migrate Stream Chat SDK to 5.0.1 by @skydoves in https://github.com/GetStream/AvengersChat/pull/21
    • Bump Stream chat SDK to 5.1.0 and update dependencies by @skydoves in https://github.com/GetStream/AvengersChat/pull/22
    • Bump dependencies and spotless gradle setup by @skydoves in https://github.com/GetStream/AvengersChat/pull/23
    • Migrate to version catalog and KTS by @skydoves in https://github.com/GetStream/AvengersChat/pull/24
    • implement core-model module by @skydoves in https://github.com/GetStream/AvengersChat/pull/25
    • Refactor into core-network, core-database, core-data modules by @skydoves in https://github.com/GetStream/AvengersChat/pull/26
    • Refactor repositories with interfaces by @skydoves in https://github.com/GetStream/AvengersChat/pull/27
    • Implement core-uicomponenets by @skydoves in https://github.com/GetStream/AvengersChat/pull/28
    • Implement feature-dm module by @skydoves in https://github.com/GetStream/AvengersChat/pull/29
    • Modularize into feature modules and refactor navigation systems by @skydoves in https://github.com/GetStream/AvengersChat/pull/30

    Full Changelog: https://github.com/GetStream/AvengersChat/compare/1.0.6...1.1.0

    Source code(tar.gz)
    Source code(zip)
    app-debug.apk(14.00 MB)
  • 1.0.6(Dec 10, 2021)

    What's Changed

    • Bump Stream SDK to 4.24.0 by @skydoves in https://github.com/GetStream/AvengersChat/pull/15
    • Feature: Stream Developers Channel on home screen by @skydoves in https://github.com/GetStream/AvengersChat/pull/16
    • Remove onCancel and bump AndroidVeil to 1.1.2 by @skydoves in https://github.com/GetStream/AvengersChat/pull/14

    Full Changelog: https://github.com/GetStream/AvengersChat/compare/1.0.5...1.0.6

    Source code(tar.gz)
    Source code(zip)
    app-debug.apk(14.77 MB)
  • 1.0.5(Nov 17, 2021)

    What's Changed

    • Bump Stream SDK to 4.22.0 by @skydoves in https://github.com/GetStream/AvengersChat/pull/12
    • Refactor StreamUIComponent to receive cid provider by @skydoves in https://github.com/GetStream/AvengersChat/pull/13

    Full Changelog: https://github.com/GetStream/AvengersChat/compare/1.0.4...1.0.5

    Source code(tar.gz)
    Source code(zip)
    app-debug.apk(14.73 MB)
  • 1.0.4(Nov 11, 2021)

    Blog Post

    A new post Building an Avengers Chat Application for Android (part 1) has been out! πŸŽ‰

    What's New?

    What's Changed

    • Remove onlineIndicator bindingAdapter by @skydoves in https://github.com/GetStream/AvengersChat/pull/10
    • Feature: Firebase push notification by @skydoves in https://github.com/GetStream/AvengersChat/pull/11

    Full Changelog: https://github.com/GetStream/AvengersChat/compare/1.0.3...1.0.4

    Source code(tar.gz)
    Source code(zip)
    app-debug.apk(14.64 MB)
  • 1.0.3(Nov 4, 2021)

  • 1.0.2(Nov 1, 2021)

  • 1.0.1(Oct 27, 2021)

  • 1.0.0(Oct 22, 2021)

Owner
Stream
Build scalable newsfeeds, activity streams, chat and messaging in a few hours instead of weeks
Stream
Multi Lingual Chat app - A modern chat application that allows users to translate textΒ messages into their preferred language

Multi Lingual Chat app - A modern chat application that allows users to translate text messages into their preferred language

Manjunath Nayak 0 Jan 18, 2022
Firebase-Chat-App-Final - An android real-time chat application implemented using firebase

Firebase-Chat-App-Final An android real-time chat application implemented using

Tanmay Nandanikar 4 Sep 10, 2022
Server/Client Chatting application that allows to choose to chat in a group chat or privately to a specific connected user

ktor_chatting_application Server/Client Chatting application that uses Ktor webs

null 10 Jun 14, 2022
Shit Chat is a realtime chat application made with Kotlin.

Shit Chat Shit Chat is a realtime chat application made with Kotlin. Screeshots : Login UI Sign Up UI User List UI Chat UI Features Store Chat on Fire

Vishal Singh 2 Oct 26, 2022
Android Combined Application for chat, audio/video calls, and broadcast to millions of web and app users using VdoTok SDK.

Android Combined Application for chat, audio/video calls, and broadcast to millions of web and app users using VdoTok SDK.

VdoTok 3 Nov 22, 2022
This is a Bluetooth operational Chat-App developed using Kotlin which shows the list of available devices nearby and paired devices, upon clicking you can start chat

This is a Bluetooth operational Chat-App developed using Kotlin which shows the list of available devices nearby and paired devices, upon clicking you can start chat ... VOILA ???? It is still in its early stages of development and currently let user to one-time chat at a time. It is under heavy development ??

Shalu Ambasta 3 Jan 10, 2022
Chat App is built to demonstrate a simple end-to-end chat encryption using RSA and AES algorithms

End-to-End Encrypted Chat ?? Chat App is built to demonstrate a simple end-to-end chat encryption using RSA and AES algorithms Built With βš’οΈ Jetpack C

Team Matrix 6 Dec 23, 2022
Android Real Time Chat & Messaging SDK

Android Chat SDK Overview Applozic brings real-time engagement with chat, video, and voice to your web, mobile, and conversational apps. We power emer

Applozic 659 May 14, 2022
Kommunicate.io Android Chat SDK for Customer Support

Kommunicate Android Chat SDK for Customer Support An Open Source Android Live Chat SDK for Customer Support Overview Kommunicate provides open source

Kommunicate 68 Jan 3, 2023
A hybrid chat android application based on the features of Instagram and Whatsapp having UI just as Telegram.

A hybrid chat android application based on the features of Instagram and Whatsapp having UI just as Telegram.

Ratik Tiwari 1 May 22, 2022