Tutorials: Chat

Sending Custom Chat Attachments With Jetpack Compose

Specifically, this tutorial will cover: What an AttachmentFactory is Creating a custom AttachmentFactory Customizing Stream Compose UI Components Sending custom files as attachments Adding previews for your custom attachment Note: Stream recently announced their Jetpack Compose U…

Building a Chat App With ChatKit for Android

Did you know you can integrate Stream’s Android SDK with other open-source libraries? To show you just how easy it is, in this tutorial you’ll leverage data from Stream’s Chat API to power the messaging UI from ChatKit. Specifically, this tutorial will cover: Stream Setup Impleme…

Instantly Send Audio Messages With Stream Chat and Flutter

Many chat applications today allow users to send voice notes as messages. In this tutorial, you’ll learn how to send voice notes, or audio attachments, in your Stream Chat Flutter app. By the end, your app will feature a chat experience similar to the shown here. This tutorial wi…

Build a Medical Pager Messaging App

Building a chat app that is both feature-rich and scalable can be difficult and time-consuming. But in just under four hours, this YouTube video by JavaScript Mastery demonstrates how to build and deploy a telemedicine chat app designed for a medical or hospital setting using the…

Jetpack Compose vs. XML-based UI Components for Stream Chat

Stream now offers two separate Android UI implementations that you can use to integrate Stream’s Chat API with your app: Compose UI Components (preferable if you’re using Jetpack Compose) UI Components (preferable if you’re building XML layouts) In almost all cases, you should us…

Peer-to-Peer Payment Integration With Stream and Flutter

Adding a peer-to-peer payment integration to your Flutter application creates a richer in-app experience for your end-users. However, you need to make sure your payment process is fast and secure. In this tutorial, you’ll learn how to integrate a peer-to-peer payment solution in …

End-to-End Encrypted Chat in Flutter

When you communicate over a chat application with another person or group, you may exchange sensitive information, like personally identifiable information, financial details, or passwords. To ensure that your data stays secure, a chat application must use end-to-end encryption. …

Add Location Sharing to a Messaging App Using Flutter

A stand-out feature of the most popular messaging applications is the ability to share a user’s location quickly and conveniently with trusted peers. Using Stream Chat and Flutter, we can implement a similar feature in very little time. In this article, we will build a small loca…

Location Sharing With Custom Attachments on Android

Stream’s Android Chat SDK supports sending custom attachments with messages. In this tutorial, you’ll learn how to send location data as a custom attachment. Note: This tutorial assumes you already know the basics of the Stream API. To get started, check out the Android In-App Me…

Building a Responsive Desktop Chat with Flutter

In today’s world, chat or instant messaging apps have completely superseded traditional text messages. We all use chat app to communicate with the people around us due to the capability of the chat application to provide features such as message read receipts, user presence, reac…

Build a Music Chat iOS App Using SwiftUI

Music has always been an oasis for me while coding and writing. I love chatting for hours on end with my friends, exploring our peculiar music taste. What if we had an app where we could listen to music and discuss with a like-minded community? This tutorial will create a music c…

iOS Passwordless Chat Application with Auth0

Almost every application needs an authentication strategy. The most common being the classic username and password combo. However, there’s a new approach some apps are taking to avoid handling or storing user passwords: passwordless authentication. It generally involves sending a…

Creating a fast and beautiful chat with Flutter

We all have probably written chat apps multiple times in our lives, and we all know that it takes time! So I always wondered if there is a way to make a custom and beautiful chat app using some lib/service that does all the heavy lifting for me. A few weeks ago, I came across

All About Reactions with the Stream Chat Android SDK

Stream’s Chat SDK for Android provides a way for you to add reactions in your application in a matter of minutes. The SDK has a free trial, and it’s free to use for small companies and hobby projects with a Maker Account. In this tutorial, you’re going to learn how to do the foll…

Creating Custom Attachments on Android

Messages in Stream Chat can contain a number of attachments. The UI Components library for Android renders these by default depending on their type. Images are rendered in a gallery layout, files are shown in a list, and links show rich previews of the content they’re leading to.…

Your First Steps with Stream Chat on Android

Previously, in Get up and Running With Stream Chat, we looked at how to register your organization for Stream Chat, and get an API key and secret for your app. Now it’s time to create a new Android project, add the Stream Chat Android SDK to it, and create your first users and ch…

Setting up your Chat environment with Stream CLI

Previously, in Get up and Running With Stream Chat, we looked at how to register your organization, and get an API key and secret for your Stream Chat app. Now it’s time to create your first users and channels in this environment. One of the ways of doing that is by using our fri…

Get up and Running With Stream Chat

Registering an account First, go to the trial registration page, and fill out the required details. (Note that your organization name can not have spaces in it.) The chat trial lets you play around with Stream Chat APIs for 30 days, for free. If you’re a small business or you’re …

Build an Android Chat app with Jetpack Compose

Stream now provides a fully-featured Jetpack Compose Chat SDK that you can use instead of the basic approach described in this article. Check out the Compose Chat Messaging Tutorial and give it a try today! Intro and context In our previous article about Jetpack Compose, we share…

Generate JWTs with Swift on AWS Lambda

Authorization is one of the essential parts of any iOS application. Once a user is logged in, it’s your authorization scheme that will make sure users can’t interact with your app in ways they’re not allowed to. Without a robust authorization scheme, hackers could easily access s…

Build an iMessage Clone with Stream’s Flutter Chat SDK

In this tutorial, we’ll build a functional clone of iMessage using Stream Chat Flutter SDK. Building a chat in your app at scale is not an easy task; but in this tutorial, you’ll get a chat experience up and running in roughly 20 minutes! You can follow this tutorial without a de…

How to Create a Live Stream Event

Technology once reserved for broadcast journalism, televised concerts, and important sporting events is now available to all with a WiFi connection and a smartphone. Live streaming, defined as the real-time transmission of events over the internet, grew exponentially in 2020. Acc…

Build an Interactive Messaging App with Stream, MML, Node and React

Message Markup Language (MML) enables you to build an interactive messaging experience. MML supports embedding elements as simple as a button to your message or as complex as date pickers and custom forms within your chat experience. MML also supports images, icons, and tables ou…

Live Streaming With Mux, Stream, and Flutter

Livestreams are everywhere these days, from popular gaming sites such as Twitch to more casual everyday apps like Instagram. Apps use live streaming and live video to help connect users and add another level of interactivity to their platform. If you think about modern live strea…

Tutorial: How to Build a Slack Clone with React Native – Part 3

In Part 2 of this tutorial, we covered how to build Slack-like navigation, channel list screen, channel screen, reaction picker, and action sheet. In this tutorial, Part 3, we will build various search screens and thread screen. Resources 👇 Below are a few helpful links if you g…

Tutorial: How to Build a Slack Clone with React Native – Part 2

React Native has come a long way since its first release in 2015. In fact, it has enough components, APIs, and supporting libraries in its present state that you can re-create every app that’s out there on the Google Play Store or Apple App Store in no time! In this series, we wi…

End-to-End Encrypted iOS Chat with Apple’s CryptoKit

In most cases, when building a chat app, it’s essential to provide adequate privacy and security to your users. This can be done using cryptographic methods such as end-to-end encryption. End-to-end encryption is becoming a mainstream expectation, as it’s featured in the biggest …

Build a Psychotherapy App with Video and Chat for iOS

In this guide, we’ll create the a basic Psychotherapy App for iOS with Stream Chat, for its fully featured chat components, and Dolby.io, for its excellent audio and video capabilities. Both offerings are HIPAA compliant. When you finish following the steps, you’ll get an app lik…

End-to-End Encrypted Chat with the Web Crypto API

When transmitting or storing user data, especially private conversations, it’s essential to consider employing cryptographic techniques to ensure privacy. By reading this tutorial, you’ll learn how to end-to-end encrypt data in web applications using nothing but JavaScript and th…

Moderate Chat Content with Swift on AWS Lambda

Most of the time, when building a chat application, it’s essential to have some level of control over what your users can share and say to each other. In this tutorial, we’ll use Swift Lambda and Stream’s powerful chat API to build a content moderation system that can prevent use…

Build a Realtime Notification Feed for AWS S3

This tutorial demonstrates how to set up notifications for these events using a Stream Feed in conjunction with AWS S3. We will walk through a basic set up that shows how to create a timeline (flat feed) to display a list of events tied to an AWS S3 bucket – think user uploads, d…

Create A Support Chat Admin Dashboard

In this tutorial, we’ll build a chat app with a dashboard that allows an admin user to switch between one-on-one customer chat channels in the same window. As a busy customer support representative, you don’t want to be stuck with a chat app that opens each chat in a new window, …

Save and Send Chat Transcripts with SendGrid

In this tutorial, we’ll build a chat app that sends a copy of a chat transcript in an email using SendGrid. Imagine being able to automatically inform your sales team when one of their clients has chatted with your support team. This app sends a transcript of that chat directly t…

Syncing Sales Chat Transcripts in Real-Time with Zendesk Sell CRM and Stream Chat

Can you imagine viewing your sales chat transcripts in real time from your sales CRM? Would your chat applications improve with more timely handling of customer chat inquiries? This post demonstrates how to leverage the powerful Stream Chat API to take action with a chat transcri…

Write a Chatbot in Swift and Deploy to AWS Lambda

Did you know you can use Swift in the backend to build a chatbot and deploy it to AWS? We’ve recently published an Open Source project called Swift Lambda to make the process easier. In this tutorial, we’ll use Swift Lambda to build a chatbot that can reply to user messages autom…

Send Chat Transcripts to HubSpot

This tutorial will explore how to make a chat widget that connects to the HubSpot CRM to (1) create or update a HubSpot CRM Contact with the user’s info, and (2) save chat transcripts in HubSpot. We’ll use the versatile Stream Chat client and its webhooks to accomplish this. The …

How to Implement Chat in Your E-Commerce iOS App

In this tutorial, we’ll integrate chat in an e-commerce app using Stream Chat’s Swift SDK. It’s crucial for buyers that may need immediate communication for payments, delivery status, last-minute changes, and refunds. Those screenshots show a button leading to a chat screen where…

How To Capture Leads From Live Chat In Zendesk

This post will demonstrate how to configure a Lead creation in Zendesk from a customer inquiry via a landing page/sales chat widget. We’ll build a full-screen experience that can be embedded on your homepage or landing pages. Our chat experience will start with a simple user regi…

How to Capture Leads From Live Chat In HubSpot

In this tutorial, learn how to build a Stream chat widget that connects to the HubSpot CRM to automatically create a new contact when a customer initiates a chat. This widget, backed by the Stream chat API, can be easily embedded to your site as a chat widget for sales, support, …

How to Build a Live Fitness iOS App

In this tutorial, we’ll build a TeleHealth iOS app where gym members and instructors can interact in an online virtual fitness class using Stream Chat, to deliver fully featured chat components, and Dolby.io, to provide quality audio and video. By the end, we’ll have an applicati…

How to Build an iOS App for Livestream Events

In this tutorial, we’ll build an iOS app for livestream events where attendees and speakers can interact in a virtual conference room using Stream Chat, to deliver fully featured chat components, and Dolby.io, to provide quality live-streamed audio and video for large audiences. …

How to Build a Virtual Classroom iOS App with Video and Chat

In this tutorial, we’ll build an iOS app where students and teachers can interact in a virtual classroom using Stream Chat, to deliver fully featured chat components, and Dolby.io, to provide quality audio and video. By the end, we’ll have an application similar to the screenshot…

How to Implement In-App Support Chat on iOS

In this tutorial, we’ll build an in-app support system using Stream Chat’s Swift SDK, which you can quickly integrate in new or existing apps. It’s crucial for users that may need immediate information or assistance in completing a task. It’s frequently present in banking, e-comm…

How to Build a Telemedicine App with Video and Chat for iOS

In this tutorial, we’ll build the basis of a Telemedicine app for iOS using Stream Chat, to deliver fully featured chat components, and Dolby.io, to deliver quality audio and video. Both solutions provide HIPAA compliance. By the end, we’ll have an application similar to the scre…

How to Build a Chat App with SwiftUI: Part 2 (Channels)

In Part 1 of this series, we created a simple chat application for iOS and macOS using SwiftUI and Stream Chat’s Swift SDK, but it only had a single channel. In this tutorial, we’ll improve on it by implementing a channels screen with three features: join, create, and search chan…

Build a 1-on-1 Video Chat with SwiftUI and Dolby.io

In this tutorial, we’ll integrate video chat into an iOS application. To do this, we integrate Dolby.io’s Interactivity APIs, formally known as Voxeet, into our application. Video chat can easily be integrated with Stream Chat API for a seamless communication experience. Note: th…

How to Build a Twitch Clone Game Live Streaming App for iOS

In this tutorial, we’ll use Stream Chat and Dolby.io’s Client SDK to build an app that lets you create a room that streams the contents of your screen and your voice for a large number of viewers and allows them to interact with each other via chat. It will be as simple as possib…

How to Build a Chat App with SwiftUI: Part 1

In this tutorial, we’ll build a simple chat application for iOS and macOS using SwiftUI and Stream Chat’s Swift SDK. Although Stream provides a suite of UIKit components that work out-of-the-box, we can use use the low-level client to develop custom components with SwiftUI. If yo…

Add Livestream Chat to your Android App

Live streaming apps have become the most popular type of application in the App Stores. Big companies, like Google, Amazon, Facebook, and Twitter, have, at least, one app offering this kind of service. For example: YouTube, Twitch, Instagram, and Periscope. All of those have a co…

How to Build a Cross-Platform iOS and macOS Chat App using Stream

Apple’s recent release of Mac Catalyst makes it possible for iOS and macOS apps to share mostly the same native codebase. While in the past, a desktop and mobile cross-platform codebase commonly meant a web app packaged in a portable format, now it can be achieved with native cod…