# Let's Start

## Installing the package&#x20;

The best way to interact with our API is to use one of our official libraries:

{% tabs %}
{% tab title="Swift - iOS (SPM)" %}
**Swift Package Manager (requires Xcode 12+)**

1. In Xcode, select File > Swift Packages > Add Package Dependency.
2. Paste the URL [`https://github.com/SadO-On/98s-Tab-iOS-game-demo/tree/main`](https://github.com/SadO-On/98s-Tab-iOS-game-demo/tree/main)
   {% endtab %}

{% tab title="Android" %}

### Step 1. Add the JitPack repository to your build file

Add it in your settings.gradle at the end of repositories:

```gradle
// For settings.gradle.kts
dependencyResolutionManagement {
    repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
    repositories {
        google()
        mavenCentral()
        maven { url = uri("https://www.jitpack.io" ) }
    }
}
// For settings.gradle
dependencyResolutionManagement {
    repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
    repositories {
        google()
        mavenCentral()
        maven { url 'https://jitpack.io' }
    }
}
```

### Step 2. Add the dependency

```gradle
dependencies {
	 implementation 'com.github.SadO-On:Android-Tab-demo:1.1.0'
}
```

{% endtab %}

{% tab title="Flutter" %}

```dart
The demo is coming soon, but we provide the service in Flutter.
```

{% endtab %}
{% endtabs %}

## Using our package in your app

After successfully adding the package to your project, you can present the game screen within your app. Make sure to import the package module at the top level in your file where you intend to present the game.

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

#### Import the package&#x20;

```swift
import Tab-demo-package
```

#### Present it in your SwiftUI view. The entry point is GameStartView &#x20;

```swift
import SwiftUI
import Tab-demo-package

struct ContentView: View {
    @State private var isPresenting = false

    var body: some View {
        Button("Play Game") {
        isPresenting.toggle()
        }
       .fullScreenCover(isPresented: $isPresenting, content: {
            GameStartView(isPresenting: $isPresenting)
        })
    }
}

```

{% endtab %}

{% tab title="Android" %}
Launch our `GameActivity.kt` from any UI in your code&#x20;

```kotlin
startActivity(Intent(this, GameActivity::class.java))
```

{% endtab %}

{% tab title="Flutter" %}

```dart
The demo is coming soon, but we provide the service in Flutter.
```

{% endtab %}
{% endtabs %}

## :information\_source: Notes:

In this section, we'll walk you through the steps to guarantee a seamless integration and address any potential version conflicts.

### Compatibility:

`Tab-demo-package` is compatible with

{% tabs %}
{% tab title="iOS" %}
&#x20;The package is compatible with `iOS 14` and above
{% endtab %}

{% tab title="Android" %}
The minimum SDK required is `24`
{% endtab %}

{% tab title="Flutter" %}

```dart
The demo is coming soon, but we provide the service in Flutter.
```

{% endtab %}
{% endtabs %}

####

### Dependency Resolution:

**1. Versioning:**

* Our package relies on specific dependencies. if your using any of them in your project. Ensure that you are using the recommended versions mentioned in the table.&#x20;

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

| Dependency                                               | Version |
| -------------------------------------------------------- | ------- |
| [`lottie-spm`](https://github.com/airbnb/lottie-spm.git) | 4.4.1   |
| [`UIPilot`](https://github.com/canopas/UIPilot.git)      | 2.0.2   |
| {% endtab %}                                             |         |

{% tab title="Android" %}

<table><thead><tr><th>Dependency </th><th>Version</th><th data-hidden></th></tr></thead><tbody><tr><td><p></p><pre><code>androidx.media3:media3-exoplayer
</code></pre></td><td><p></p><pre><code>1.2.0
</code></pre></td><td></td></tr><tr><td><p></p><pre><code>androidx.media3:media3-ui
</code></pre></td><td><p></p><pre><code>1.3.1
</code></pre></td><td></td></tr><tr><td><p></p><pre><code>androidx.compose:compose-bom
</code></pre></td><td><pre><code>2024.04.01
</code></pre></td><td></td></tr><tr><td><p></p><pre><code>com.airbnb.android:lottie-compose
</code></pre></td><td><p></p><pre><code>6.4.0
</code></pre></td><td></td></tr></tbody></table>
{% endtab %}
{% endtabs %}

**2. Conflict Resolution:**

* In case of version conflicts with existing dependencies in your project, follow these steps:
  * Identify conflicting dependencies .
  * Check our documentation for recommended versions and update conflicting dependencies accordingly.
  * If issues persist, [reach out to our us](https://twitter.com/98sStudio) for personalized assistance.

<br>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.98s.studio/lets-start.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
