Skip to content

Latest commit

 

History

History
165 lines (124 loc) · 16.9 KB

README.md

File metadata and controls

165 lines (124 loc) · 16.9 KB

Android Sample Apps

Build Status API Stream Feeds

😎 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:

📹 Stream Video SDK

Stream also offers seamless Video SDK solutions that allow you to implement video calling, audio/video room, and live streaming using Jetpack Compose. If you're interested in learning the Stream Video SDKs, check out the tutorials below:

🤝 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 😎 under our featuring list after reviewing the project in our team.

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 App


The 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

UI Components Sample App Preview

Compose UI Components Sample App


The 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

Compose UI Components Sample App Preview

✈️ Additional samples

Project

Video Chat Sample


Livestream 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

Video Chat Sample Preview

Virtual Event Sample


Virtual event sample app.

• Direct and livestream chats
• Light and dark modes
• Multiple user accounts

> Source Code

Virtual Event Sample Preview

WhatsApp Clone


WhatsApp clone app.

• Custom message input
• Custom message list header

> Source Code

WhatsApp Clone Preview

WhatsApp Clone Compose


WhatsApp clone app built with Jetpack Compose and Stream Chat SDK for Compose.

• Demonstrates ChatGPT's unofficial APIs
• Implementing entire UI elements with Jetpack Compose
• mplementation of Android architecture components with Jetpack libraries such as Hilt and AppStartup
• Performing background tasks with Kotlin Coroutines

> Source Code

WhatsApp Clone Compose Preview

ChatGPT Android


ChatGPT Android demonstrates OpenAI's ChatGPT on Android with 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
• Integrating chat systems with Stream Chat SDK for real-time event handling

> Source Code

ChatGPT Clone Compose Preview

Gemini Android


Gemini Android demonstrates Google's Generative AI on Android with 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
• Integrating chat systems with Stream Chat SDK for real-time event handling

> Source Code

Gemini Clone Compose Preview

Twitch Clone Compose


Twitch clone project demonstrates modern Android development built with Jetpack Compose and Stream Chat/Video 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
• Integrating video call systems with Stream Video SDK using WebRTC under the hood

> Source Code

Twitch Clone Compose Preview

Slack Clone Compose


Slack 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

Slack Clone Compose Preview

Avengers Chat


Demo 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

Avengers Chat Preview

Facebook Messenger Clone


Facebook Messenger clone using Stream SDK & Jetpack Compose.

> Source Code

Facebook Messenger Clone Preview

Stream Draw


Real-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

Stream Draw Preview

Foldable Chat


Demonstrates adaptive and responsive UIs with Jetpack WindowManager API.

> Source Code

Foldable Chat Preview

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:

UI Components:

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.