> ## Documentation Index
> Fetch the complete documentation index at: https://docs.flipt.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Client-Side SDKs

> An overview of the client-side SDKs available for integrating with Flipt.

<Info>
  Not sure which SDK to use? Check out our [Integration
  Overview](/v2/integration/overview) documentation.
</Info>

## Overview

Flipt provides a number of client-side SDKs to help you integrate with Flipt in your application. The SDKs are available in a number of languages:

<Tip>
  These SDKs are the same ones that are available for the [Flipt v1 Client
  API](/v2/integration/client) and are backward and forward compatible which
  means there is no need to rewrite your existing code to integrate with Flipt
  v2.
</Tip>

## Authentication

Client-side SDKs connect to your Flipt server, which handles authentication. Your application needs a valid client token to communicate with Flipt.

For detailed instructions on setting up authentication, see the [Connecting Applications to Flipt](/v2/guides/operations/authentication/connecting-applications) guide.

In brief: create a static token in your Flipt configuration, then pass it to your SDK initialization.

<CardGroup cols={2}>
  <Card title="JavaScript" href="https://github.com/flipt-io/flipt-client-sdks/tree/main/flipt-client-js" icon="js" color="#f7e018">
    Evaluate flags client-side in your Node.js or browser-based applications
  </Card>

  <Card title="React" href="https://github.com/flipt-io/flipt-client-sdks/tree/main/flipt-client-react" icon="react" color="#61dafb">
    Evaluate flags client-side in your React applications
  </Card>

  <Card href="https://github.com/flipt-io/flipt-client-sdks/tree/main/flipt-client-python" title="Python" icon="python" color="#4c8abe">
    Evaluate flags client-side in your Python applications
  </Card>

  <Card href="https://github.com/flipt-io/flipt-client-sdks/tree/main/flipt-client-go" title="Go" icon="golang" color="#00add8">
    Evaluate flags client-side in your Go applications
  </Card>

  <Card href="https://github.com/flipt-io/flipt-client-sdks/tree/main/flipt-client-java" title="Java" icon="java" color="#e41f23">
    Evaluate flags client-side in your Java applications
  </Card>

  <Card href="https://github.com/flipt-io/flipt-client-sdks/tree/main/flipt-client-ruby" title="Ruby" icon="gem" color="#cd412b">
    Evaluate flags client-side in your Ruby applications
  </Card>

  <Card href="https://github.com/flipt-io/flipt-client-sdks/tree/main/flipt-client-dart" title="Dart" icon="bullseye" color="#2cb7f6">
    Evaluate flags client-side in your Dart/Flutter applications
  </Card>

  <Card href="https://github.com/flipt-io/flipt-client-sdks/tree/main/flipt-client-csharp" title="C#" icon="microsoft" color="#4c8abe">
    Evaluate flags client-side in your C# applications
  </Card>

  <Card href="https://github.com/flipt-io/flipt-client-sdks/tree/main/flipt-client-swift" title="Swift" icon="swift" color="#ffac45">
    Evaluate flags client-side in your Swift applications
  </Card>

  <Card href="https://github.com/flipt-io/flipt-client-sdks/tree/main/flipt-client-kotlin-android" title="Android" icon="android" color="#3ddc84">
    Evaluate flags client-side in your Android applications
  </Card>

  <Card href="https://github.com/flipt-io/flipt-client-sdks/issues/new?assignees=&labels=new-language&projects=&template=new_language.yml" title="Request a Client" icon="github" color="#000000">
    > Need a client in another language? Let us know!
  </Card>
</CardGroup>

## Polling vs Streaming

By default, the SDKs will use a polling mechanism to sync the state of the flags with the Flipt server. You can set the polling interval using the `updateInterval` option in the SDK's configuration.

Unlike v1, **Flipt v2 supports streaming mode**, which allows our SDKs to subscribe to changes on the Flipt server and update the state of the flags accordingly in real-time.

To change to streaming mode, you can set the `mode` option in the SDK's configuration to `streaming`.
