# Installation

{% hint style="info" %}
Make sure you're using `react-native` version **< 0.63**
{% endhint %}

## **Install Cotter**

Make sure you are using version >= 0.2.0.&#x20;

{% tabs %}
{% tab title="yarn" %}

```
yarn add react-native-cotter
```

{% endtab %}

{% tab title="npm" %}

```
npm install react-native-cotter --save
```

{% endtab %}
{% endtabs %}

**Installing Dependencies for bare React Native project**

{% tabs %}
{% tab title="yarn" %}

```
yarn add react-native-device-info rn-secure-storage react-native-randombytes react-native-camera react-native-svg react-native-securerandom buffer react-native-inappbrowser-reborn react-native-sha256
```

{% endtab %}

{% tab title="npm" %}

```
npm install  --save react-native-device-info rn-secure-storage react-native-randombytes react-native-camera react-native-svg react-native-securerandom buffer react-native-inappbrowser-reborn react-native-sha256
```

{% endtab %}
{% endtabs %}

### For iOS CocoaPods

```swift
cd ios && pod install && cd ..
```

### For Android

Add the following to your `android/app/build.gradle`

```
android {
  ...
  defaultConfig {
    ...
    missingDimensionStrategy 'react-native-camera', 'general'
    multiDexEnabled true
  }
}
```

**Using React Native >= 0.60**

🎉You're done! Linking the package manually is not required anymore with [Autolinking](https://github.com/react-native-community/cli/blob/master/docs/autolinking.md).

## **(Optional) Additional guides for installation**

{% tabs %}
{% tab title="Using React Native < 0.60 " %}

```swift
react-native link
cd ios && pod install && cd ..
```

{% endtab %}

{% tab title="Manual Installation" %}
Cotter's package doesn't need any manual installation. Cotter is dependent on several packages. Please refer to their docs for manual installation.

* [`react-native-inappbrowser-reborn`](https://www.npmjs.com/package/react-native-inappbrowser-reborn#getting-started) &#x20;
* [`react-native-securerandom`](https://www.npmjs.com/package/react-native-securerandom#installation)
* [`react-native-sha256`](https://www.npmjs.com/package/react-native-sha256#installation)
* [`react-native-permissions`](https://github.com/react-native-community/react-native-permissions)&#x20;
* [`react-native-camera`](https://github.com/react-native-community/react-native-camera)&#x20;
* [`react-native-svg`](https://github.com/react-native-community/react-native-svg)
* [`rn-secure-storage`](https://www.npmjs.com/package/rn-secure-storage)
* [`react-native-randombytes`](https://www.npmjs.com/package/react-native-randombytes)&#x20;
  {% endtab %}
  {% endtabs %}
