Skip to main content

Overview

Building on top of the Stream Chat API, the Stream Chat Angular component library includes everything you need to build feature-rich and high-functioning chat user experiences out of the box. The library includes an extensive set of performant and customizable Angular components which allow you to get started quickly with little to no plumbing required. Use cases include team and social messaging and customer support. The library supports:

  • Rich media messages
  • Reactions
  • Image and file uploads
  • Read state
  • Channel and message lists
  • Threads

Architecture

The library contains a set of components that contain all of the necessary features to build a performant chat UI. However, it is also possible to provide your own custom components instead of the built-in ones.

If you want to, you can build your own chat UI from scratch but still take advantage of the library by using our services.

The left navigation will guide you to the various documentation sections for information on everything regarding our robust component library. Check out the instructions below for adding the library to your Angular project.

Installation

We recommend using the component library through a package manager. Stream Chat Angular is based on top of Stream's JavaScript Client.

Install with NPM

Run the following command if you are using Angular 16 or Angular 15:

npm install stream-chat-angular stream-chat @ngx-translate/core

Run the following command if you are using Angular 14:

npm install stream-chat-angular stream-chat @ngx-translate/core ngx-popperjs@14

Run the following command if you are using Angular 13:

npm install stream-chat-angular stream-chat @ngx-translate/core angular-mentions@1.4.0 ngx-popperjs@13 --legacy-peer-deps

Run this command if you are using Angular 12:

npm install stream-chat-angular stream-chat @ngx-translate/core angular-mentions@1.4.0 ngx-popperjs@12 --legacy-peer-deps

Tutorial

Follow our tutorial and build your first Stream Angular chat application.

Did you find this page helpful?