All Tutorials

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 use GitHub with Android Studio

Android Studio makes it easy to push changes to your favorite Open Source, professional, or personal projects on GitHub. In this tutorial, we’ll learn how to use GitHub with Android Studio. We’ll use an Open Source contribution for context. Android developers use Open Source proj…

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 Custom Timeline Feed with Kotlin on Android

In this post, we’ll create a simple social network, called "The Stream", that allows a user to post messages to followers. The app will allow a user to post a message to their followers. Stream’s Activity Feed API, combined with Android, makes it straightforward to build this sor…

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 for a seamless communication experience. Note: the li…

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…

Encrypted Chat on iOS (Swift)

In this tutorial, we’ll build encrypted chat on iOS using Swift. We’ll combine Stream Chat and Virgil Security. Both Stream Chat and Virgil make it easy to create a solution with high security with all the features you expect. These two services allow developers to integrate chat…

Build a Livestream Video & Chat App for Android

As we seek to still connect with friends and family while we all #stayhome, Live Streaming and Video Conferencing have become insanely popular. These technologies have always been great tools for connecting with coworkers and loved ones who are not located nearby; however, we are…

Series: Building a Social Network with Flask, React & Stream – Part 15

This article is the fourth installment of a tutorial series focused on how to create a full-stack application using Flask, React/Redux and Stream. In this article, we are going to start creating, editing, and fetching collections, or groups of links, for our web application. Be s…

Creating a Realtime Chat Application with Django and Angular

In this tutorial, we will go through the process of creating a realtime messaging application using Django and Angular. We’ll build a custom chat interface and then use Stream’s client to allow realtime messaging in our application. The gif below shows how the final application w…

Building a Social Network with SwiftUI – Part 3 (Group Channels)

In the third part of our series, we’re building group chat into our social application. This allows users to chat with multiple people at the same time. We leverage Stream Chat to do the heavy lifting. This post assumes you’ve gone through part 1 and part 2. Using our code from p…

Building a Social Network with SwiftUI – Part 2 (Direct Messaging)

In the second part of our series, we’ll implement direct messaging between users by integrating Stream Chat. This post assumes you’ve followed along with part 1. Leveraging our code from part 1, we’ll modify the backend to generate a Stream Chat frontend token so our mobile appli…

Building a Social Network with SwiftUI – Part 1 (Activity Feeds)

In this post, we’ll be creating a simple social network with SwiftUI, called Stream Flutter, that allows a user to post messages to followers. The app will allow a user to post a message to their followers and view updates from people they follow. Stream’s Activity Feed API, comb…

Building a Social Network with SwiftUI – 3 Part Series

In this series of tutorials, we’ll create a simple social network, called The Stream, that allows a user to post messages to followers, chat either 1-on-1 or in groups. Stream’s Activity Feed API and Chat API, combined with Swift, makes it straightforward to build this sort of co…

Implement “Sign in with Apple” on React Native iOS Chat App

"Social logins" are a very popular alternative to creating a login and password for a website or application that is new to a user. With "social login", a user makes use of an existing account, like Google or Facebook, to sign up for or log in to another application. This means u…

Adding Sign in with Apple to your iOS App

Since April 2020, all apps that use a third-party or social login service are required to offer Sign in with Apple if they want to be accepted in the App Store. In a previous tutorial, we walked through the process of building a simple clone of Apple’s iMessage. In this tutorial,…

Series: Building a Social Network with Flask, React & Stream – Part 14

This article is the third installment of a tutorial series focused on how to create a full-stack application using Flask, React/Redux and Stream. In this article, we are going to finish implementing our authentication flow as well as integrating a basic profile component into our…

Invite Only Chat with Laravel and Vue

Group chat can get a bit messy, especially if it’s public and anyone can join. Making a group chat invite-only can help manage the content of the group and the sanity of those in it, in addition to preventing spam users and bots. In this tutorial, we’ll be building an invite-only…

Android Live Chat with React Native and PHP

Messaging apps are becoming more and more popular as a means through which to connect with friends and family. They’re convenient and provide an easy and affordable means of communication. A recent study by Statista revealed that the current number of smartphone users in the worl…

One-On-One Chat With Ruby on Rails and React Native

One of the fastest ways to build applications has always been Ruby on Rails. Ruby on Rails is a feature-packed web development framework that makes it easy for novices and experts alike to easily stand up an application. When you want to add chat to your application, using Stream…

Translate Chat Messages in Real Time with Amazon Translate

Language barriers can hinder growth and build a wall between your business and its potential customers, ultimately limiting your market and costing you money. If a customer reaches out to you by chat in German or Spanish, but you don’t understand the language, wouldn’t it be nice…

Building a Messaging App with Flutter

Flutter is the latest cross-platform UI toolkit (provided by Google) for building Android, iOS, and even desktop apps that is gaining popularity amongst developers. Stream Chat, on the other hand, is an enterprise-grade chat solution that offers extensive APIs and SDKs to power c…

Build a Customer Support Live Chat App With Laravel and React Hooks

Customer support live chat is an incredible tool for collecting valuable feedback from your customers and increasing your website engagement rate. With that said, it can take weeks or even months to build a functional, scalable, reliable real-time chat application. Luckily, Strea…

Building a Chat Server with Go: Make a Chat App

Are you thinking of building a chat application in Go? You’ve come to the right place! This post will walk you through everything you need to know to make a chat app with the Stream Chat API and will show a working example server that ties all the concepts discussed in this tutor…

Building Chatbots with Android and Dialogflow

Interest in and application of artificial intelligence and machine learning have been rapidly rising in the last few years. One of the most popular ways in which this interest has manifested is a rise in the use of chatbots. Especially in years past, communicating with a chatbot …

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

React Native has a significant footprint in the mobile development world. And with every new release, it gets better and better in terms of development speed and performance. Building a chat application used to be a massive chunk of work, but with the power of react-native and St…

Build an iMessage Clone with Stream’s iOS SDK

In this tutorial, we’ll build a functional clone of iMessage using Stream Chat iOS SDK. Building a messaging app used to be difficult; but in this tutorial, you’ll get a chat experience up and running in roughly 20 minutes! If you get lost during this tutorial, you can check: The…

Build and Deploy a Mobile Messaging App with Cordova and Android

Apache Cordova is an application development framework that allows you to develop cross-platform apps using web technologies such as HTML, CSS, and JavaScript. Its main advantage over traditional app development workflows is that it allows for the use of a single codebase for And…

Add Messaging Functionality to Your Laravel App

Add Messaging Functionality to Your Laravel App If you are building an app with Laravel and want to add a social aspect, such as chat, Stream Chat provides exactly what you need. In this tutorial, we’ll do a deep dive into how to use Stream to add a messaging feature to your Lara…

Series: Building a Social Network with Flask, React & Stream – Part 13

This article is the second installment of a tutorial series focused on how to create a full-stack application using Flask, React/Redux and Stream. In this piece, we are going to be starting our authentication flow with registration and user confirmation, as well as getting up and…

Migrate from Pusher Chatkit to Stream Chat

As previously mentioned in a blog post by Stream, Pusher recently announced its intention to shut down their real-time messaging service, Chatkit, effective April 23rd, 2020, to narrow its product focus to Channels and Beams. Although Pusher Chatkit fulfilled the basic premise of…