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

# Setting up the Dynamic Client

<Card title="Recommended: JavaScript SDK for React Native" icon="react" color="#4779FE">
  While this SDK is still supported, we recommend using newer [JavaScript SDK](/docs/javascript/reference/react-native-quickstart), which is optimized for React Native, but also comes with a host of other benefits.
</Card>

The Dynamic Client is a vanilla javascript package that allows users to quickly set up all the configurations
needed to get an interface that allows them to interact with our features.

It provides a very simple, bare bones client object through the call to `createClient`.
This client can then be extended with many other features, like React Native support and viem integration.

## Installation

Simply run the following in your terminal:

<Tabs>
  <Tab title="expo">
    ```bash Shell theme={"system"}
    npx expo install @dynamic-labs/legacy-client
    ```
  </Tab>

  <Tab title="npm">
    ```bash Shell theme={"system"}
    npm install @dynamic-labs/legacy-client
    ```
  </Tab>

  <Tab title="yarn">
    ```bash Shell theme={"system"}
    yarn install @dynamic-labs/legacy-client
    ```
  </Tab>
</Tabs>

## Set up

Now create your client with the following code:

```typescript theme={"system"}
import { createClient } from '@dynamic-labs/legacy-client'

export const dynamicClient = createClient({
  environmentId: 'YOUR-ENVIRONMENT-ID',
  // Optional:
  appLogoUrl: 'https://demo.dynamic.xyz/favicon-32x32.png',
  appName: 'Dynamic Demo',
})
```

You can read more about our client package [here](/docs/react-native/reference/package-references/client).
