# Twilio Conversations Client SDKs

Twilio provides client-side Conversations SDKs for browser-based web applications, as well as for native iOS and Android applications.

## JavaScript SDK

The latest version of the JavaScript SDK for Conversations is available on Twilio's CDN. To include it on your web page, [follow the instructions in the SDK documentation](https://sdk.twilio.com/js/conversations/latest/docs/index.html#cdn).

The `Twilio.Conversations` namespace will then be available in the window scope of your JavaScript application.

The JS Conversations SDK is also [available from NPM](https://www.npmjs.com/package/@twilio/conversations).

Want to see the JS Conversations SDK in action? Check our Conversations [**React Demo App**](https://github.com/twilio/twilio-conversations-demo-react/)! The app demonstrates a basic conversations client application with the ability to create and join conversations, add other participants into the conversations, and exchange messages.

## Android SDK

The Twilio Conversations Android SDK is distributed as a direct download from Twilio's CDN. It can also be installed via Maven or directly within a Gradle build file using Maven Central.

### Direct download

Download the Twilio Conversations Client library for Android from the [Twilio CDN](https://sdk.twilio.com/android/conversations/v6.0/twilio-conversations-android.aar). The download's SHA-256 is:

```bash
0941553efaf1737e6877aa1a7af4e7bffad69b382d8bf478613f5c1a8c69f192
```

### Maven Central

Twilio Conversations is available from [Maven Central](https://search.maven.org/artifact/com.twilio/conversations-android).

### Gradle

To install via Gradle, include the following in your Gradle build file:

```bash
allprojects {
  repositories {
    mavenCentral()
  }
}

/**
 * Declare dependencies
 * @see http://www.gradle.org/docs/current/userguide/userguide_single.html#sec:how_to_declare_your_dependencies
 */
dependencies {
  implementation 'com.twilio:conversations-android:6.1.1'
}
```

> \[!NOTE]
>
> Your Android project needs compatibility with [Java 8 language features](https://developer.android.com/studio/write/java8-support). If you have not already done so, add the following section to the `android` module in your `build.gradle` file:
>
> ```java
> android {
>   ...
>   compileOptions {
>     sourceCompatibility JavaVersion.VERSION_1_8
>     targetCompatibility JavaVersion.VERSION_1_8
>   }
>   ...
> }
> ```

Want to see the Android Conversations SDK in action? Check our Conversations [**Kotlin Demo App**](https://github.com/twilio/twilio-conversations-demo-android-kotlin)! The app demonstrates a basic conversations client application with the ability to create and join conversations, add other participants into the conversations, and exchange messages.

## iOS SDK

The Conversations SDK for iOS is available through the [Swift Package Manager](https://swift.org/package-manager/) dependency manager.

> \[!WARNING]
>
> Package manager support for iOS SDK has shifted from CocoaPods and Carthage towards Swift Package Manager as the universal and the best-supported option.
>
> We do not currently support the Carthage package manager and/or CocoaPods.

### Swift Package Manager

To install the SDK with Swift Package Manager, add the following dependency to your project:

```bash
https://github.com/twilio/conversations-ios
```

1. Open your project in Xcode.
2. Select **File > Add Packages...**.
3. Enter `https://github.com/twilio/conversations-ios` into the search field.
4. Choose the appropriate version and click **Add Package**.

That's it!

Want to see the iOS Conversations SDK in action? Check our Conversations [**Swift Demo App**](https://github.com/twilio/twilio-conversations-demo-ios-swift)! The app demonstrates a basic conversations client application with the ability to create and join conversations, add other participants into the conversations, and exchange messages.
