All Tutorials

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…

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…

Real-Time Messaging App with Node

This tutorial will take you through how to create a live chat app that responds in real-time, with the help of Dialogflow and Stream’s Messaging Platform. We’ll be making a chatbot that interprets the intent of a user’s input using Natural Language Processing (NLP) and responds a…

Series: Building a Social Network with Flask & Stream – Part 12

This article is the first installment of a tutorial series focused on how to create a full-stack application using Flask, React/Redux and Stream. This tutorial is an adaptation of my previous series on creating a Stream-based web app with Flask, so be sure to check it out to unde…

Build an Encrypted Messaging App for Android

In this tutorial, we’ll build an encrypted chat/messaging example app for Android. To do this, we will combine the Stream Chat Platform and Virgil Security. Stream and Virgil make it easy to build a solution with excellent security by combining all of the features you would expec…

Text-to-Speech Messaging App with AWS Polly

In this article, we’ll take a look at how to make chat applications more accessible to visually impaired users by adding text-to-speech functionality, which makes it possible for these users to have incoming messages read to them in realtime. We’ll be leveraging AWS Polly’s natur…

Build a GDPR-Compliant Chat/Messaging App

The General Data Protection Regulation (GDPR) is an EU data protection law (passed into law in 2018) that determines how companies use and protect EU citizens’ data. While you might feel this doesn’t concern you, it very likely does! As long as you have EU residents making use of…

Deploy a React Chat App to Heroku

In this article, we will be creating a chat application using React and Stream Chat. The app will feature an authorization page for login/signup, followed by a chat view that allows for communication between several authorized users. After creating the chat application, we will d…

Series: Building a Social Network with Flask & Stream – Part 11

This segment is the eleventh installment of a tutorial series focused on how to create a full-stack application using Flask and Stream. In this article, we walk through setting up our web app for deployment using Zappa and AWS Lambda. Be sure to check out the Github repo to follo…

Add In-App Messaging to Your Mobile App – React Native / Expo

Stream’s Messaging API allows you to build real-time chat applications that are scalable, fault-tolerant, secure, and fast, so you don’t have to re-invent the wheel by starting from scratch. You’ll take less time to create a robust app (like days to create a real-time chat applic…

Activity Feed Powered by GitHub WebHooks

An activity feed is a list of recent actions happening in realtime. In this article, we’ll build a simple feed app powered by GitHub WebHooks and Stream Feeds in JavaScript. The app will track the activities of your GitHub organization or personal repositories. So, we’ll see what…

Build a One-to-One Chat App with JavaScript

More and more applications are seeing the value in allowing users to communicate in real-time, either with one another or with their support team. Adding this feature to existing applications, or even new ones, however, can seem like a giant, time-consuming undertaking. To help m…

Series: Building a Social Network with Flask & Stream – Part 10

This segment is the tenth installment of a tutorial series focused on how to create a full-stack application using Flask and Stream. In this article, we are going to start styling our app and adding cool new features like notification counts and link previews. Be sure to check ou…

Android Chat Bubbles: Building iOS Style Chat in Android

In this post, we’ll explore how to do two things: 1) create live chat message bubbles in Android that are similar to WhatsApp and iMessage and 2) customize Stream Chat’s UI Components. We’ll customize Stream Chat Android’s built-in UI components by plugging in a custom message vi…

The Stream CLI By Example

The Stream CLI is a powerful tool for communicating and debugging your Stream Chat setup with the Stream API. At this time, Stream Chat is only supported; however, Stream Feed support will come to the CLI later this year. With the Stream CLI, you can quickly work your chat config…

Build a Terminal Chat Application With Node.js

Let’s create a functional chat interface right in the terminal with Node.js! Although building a chat app is no small task, with the help of Stream’s fully featured Chat API, it’ll only take a few lines of code, as you’ll see. Here’s a demo of what the final application will look…

Series: Building a Social Network with Flask & Stream – Part 9

This post is the ninth installment of a tutorial series focused on how to set up a full-stack application using Flask and Stream. This week, we’re going to be creating everything we need to make immersive social experiences for our app using follow relationships! Follow relations…

Customer Support Live Chat with VanillaJS and Stream Chat

How much do you love when you can just jump on a company’s website and chat with one of their representatives to take care of your business; no picking up the phone, no waiting days for an email back?? Customer support live chat is a critical tool for every forward-thinking busin…

Stream Flutter: Building a Social Network with Flutter (Series)

In this post, we’ll be creating a simple social network, 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 chat with them. Stream’s Activity Feed API and Chat API combined with Google’s Flut…

Stream Flutter: Building a Social Network with Flutter – Activity Feeds

In this post, we’ll be creating a simple social network, 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. Stream’s Activity Feed API combined with Google’s Flutter makes it straightforward to …

Stream Flutter: Building a Social Network with Flutter – Direct Messaging

In the second part of our series, we’ll implement direct messaging between users by integrating the Stream Messaging Platform. 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 s…

Stream Flutter: Building a Social Network with Flutter – 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…