Android Sample Apps
π Repo Overview
This repository contains sample projects, guides, tutorials, and links to helpful resources to help you get started with Android Stream SDK.
π Quick Links
Tutorials:
Documentation:
π€ Contribution
Submissions are always welcomed! You can create your own open-source project or sample app by creating a new module for this project following our Android Chat Tutorial or Compose Chat Tutorial.
After building your project, create an issue or pull request. Your project will be categorized
We also welcome code changes that improve the apps or fix a problem. Please follow all best practices and add tests if applicable before submitting a Pull Request on Github.
π Main Samples
Project | |
---|---|
UI Components Sample AppThe main sample app built on top of our UI components. Maintained to support the latest version of the SDK. β’ Multiple users accounts β’ Offline support β’ Message search and filtering β’ Channel creation β’ Push notifications β’ Threads and replies β’ Emoji reactions β’ User mentions β’ Giphy integration β’ Attachments picker β’ Typing indicators > Source Code |
|
Compose UI Components Sample AppThe main sample app built on top of our Compose UI Components. Maintained to support the latest version of the SDK. β’ Multiple users accounts β’ Offline support β’ Channel search and filtering β’ Push notifications β’ Threads and replies β’ Emoji reactions β’ User mentions β’ Giphy integration β’ Attachments picker β’ Typing indicators > Source Code |
|
βοΈ Additional samples
Project | |
---|---|
Video Chat SampleLivestream app that demonstrates how to use the low level client to listen for events. β’ Video list and details β’ Custom message list β’ Low level client integration > Source Code |
|
Virtual Event SampleVirtual event sample app. β’ Direct and livestream chats β’ Light and dark modes β’ Multiple user accounts > Source Code |
|
WhatsApp CloneWhatsApp clone app. β’ Custom message input β’ Custom message list header > Source Code |
|
WhatsApp Clone ComposeWhatsApp clone app built with Jetpack Compose and Stream Chat SDK for Compose. β’ Implementing entire UI elements with Jetpack Compose β’ Implementation of Android architecture components with Jetpack libraries such as Hilt and AppStartup β’ Performing background tasks with Kotlin Coroutines β’ Integrating chat systems with Stream Chat SDK for real-time event handling > Source Code |
|
Slack Clone ComposeSlack clone app built with Jetpack Compose and Stream Chat SDK for Compose following clean architecture principles. β’ Implementing entire UI elements with Jetpack Compose β’ Implementation of Android architecture components with Jetpack libraries such as Hilt β’ Performing background tasks with Kotlin Coroutines β’ Integrating chat systems with Stream Chat SDK for real-time event handling and authentication > Source Code |
|
Avengers ChatDemo application based on modern Android tech stacks and Stream Chat SDK. β’ 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 β’ Guest mode β’ User online/offline status β’ User last active date β’ User info & direct message dialogs β’ Visual animations like transition > Source Code |
|
Facebook Messenger CloneFacebook Messenger clone using Stream SDK & Jetpack Compose. > Source Code |
|
Stream DrawReal-time multiplayer drawing & chat game app built entirely with Jetpack Compose. β’ Light and Dark themes β’ Creating and joining a group channel β’ Supports host mode and guest mode β’ Welcome and exit messages β’ Fetches a list of words from the network β’ Real-time drawing on the sketchbook β’ Real-time chat messaging with multiple users β’ Real-time participants' list of a connected channel β’ Guessing a word and congratulation animations β’ Single message notification and real-time chat dialog for the host β’ Restarting game by the host β’ Exiting and deleting the channel by the host β’ And a lot of additional features using Stream Chat SDK for Android! > Source Code |
|
Foldable ChatDemonstrates adaptive and responsive UIs with Jetpack WindowManager API. > Source Code |
|
Chat Guides
See here for all our chat guides.
These guides explore our UI components in greater detail and demonstrate how to easily perform a variety of common actions using the Stream Chat Android SDK, such as:
- Adding Push Notifications
- Sending Custom Attachments
- Handling Channel List Updates
- Providing Offline Support
UI Components:
- Building a Channel List Screen
- Building a Message List Screen
- Creating a Custom Message Input View
- Adding Localization
- App Startup Initializers
- Implementing Own Capabilities
- Providing Custom Reactions
- Adding Custom Attachments (MessageInputView)
- Adding Custom Attachments (MessageComposerView)
Compose UI Components:
What is Stream?
Stream allows developers to rapidly deploy scalable feeds and chat messaging with an industry leading 99.999% uptime SLA guarantee.
With Stream's chat components, developers quickly add chat to their app for a variety of use-cases:
- Livestreams like Twitch or Youtube
- In-Game chat like Overwatch or Fortnite
- Team style chat like Slack
- Messaging style chat like Whatsapp or Facebook's messenger
- Commerce chat like Drift or Intercom
πΌ We are hiring
We've recently closed a $38 million Series B funding round and we keep actively growing. Our APIs are used by more than a billion end-users, and you'll have a chance to make a huge impact on the product within a team of the strongest engineers all over the world.
Check out our current openings and apply via Stream's website.
License
The MIT License (MIT)
Copyright (c) 2014-2022 Stream.io Inc. All rights reserved.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.