Skip to main content

Dependencies#

All Stream Android libraries are available from MavenCentral, with some of their transitive dependencies hosted on Jitpack.

Before you add Stream dependencies, update your repositories in the settings.gradle file to include these two repositories:

dependencyResolutionManagement {    repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)    repositories {        google()        mavenCentral()        maven { url "https://jitpack.io" }    }}

Or if you're using an older project setup, add these repositories in your project level build.gradle file:

allprojects {    repositories {        google()        mavenCentral()        maven { url "https://jitpack.io" }    }}

Check the Releases page for the latest version and the changelog.

Latest version badge

Available Artifacts#

Client#

To add the low-level Chat client library to your app, open your module's build.gradle script and add the following:

dependencies {    implementation "io.getstream:stream-chat-android-client:$stream_version"}

Offline Support#

To use offline support in your application, add the following dependency:

dependencies {    implementation "io.getstream:stream-chat-android-offline:$stream_version"}

This also adds the client library automatically.

UI Components#

To use the UI Components in your application, add the following dependency:

dependencies {    implementation "io.getstream:stream-chat-android-ui-components:$stream_version"}

Adding the UI Components library as a dependency will automatically include the client and offline libraries as well.

Compose UI Components#

To use the Compose UI Components instead, add the following dependency:

dependencies {    implementation "io.getstream:stream-chat-android-compose:$stream_version-beta"}
info

Note that the Compose SDK's version still has a -beta postfix in it.

Adding the Compose UI Components library as a dependency will automatically include the client and offline libraries as well.

Versioning#

Our Android libraries do not follow semantic versioning.

We increase the minor version whenever breaking changes are introduced. Patch releases only contain smaller fixes and improvements.

You can keep track of all the changes in the Stream Android libraries via the GitHub releases page, and you can also find the release notes of all past releases in our CHANGELOG file. These will always highlight breaking changes.

We also maintain a separate document, DEPRECATIONS, which lists deprecated constructs in the SDK, with their expected time of further deprecations and eventual removal.

Snapshot Builds#

We publish SNAPSHOT versions of our SDK, which contain the code as of the latest commit on the develop branch.

These builds may contain bugs or breaking changes that will be fixed before the next proper release. However, you can use these builds temporarily to include the latest changes from our SDK in your project before the next release happens.

warning

Snapshot builds are not stable. Never use them in production.

To use snapshot builds, you need to add the Sonatype snapshot repository in your Gradle build configuration (see at the top of this page for where to add this):

maven { url 'https://oss.sonatype.org/content/repositories/snapshots/' }

Then you can add a snapshot dependency on any of our artifacts, replacing the normal version number with a version that has a -SNAPSHOT postfix. Our snapshot version is always one patch version ahead of the latest release we've published. If the last stable release was X.Y.Z, the snapshot version would be X.Y.(Z+1)-SNAPSHOT.

You can browse our available snapshot builds in the Sonatype snapshot repo, which you can also check for what the latest available snapshot version is.

info

If you're using a snapshot of our Compose library, do not include -beta in the version name.

Did you find this page helpful?