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

# クイックスタート

> Kameleoon のウェブ、サーバーサイド、モバイル SDK を一覧で比較し、インストールと初期化が必要な SDK にすぐ移動できます。

Kameleoon は、主要なウェブ、サーバーサイド、モバイルの各プラットフォーム向けに専用の SDK を提供しています。以下からお使いのスタックに対応する SDK を探し、リンク先の SDK 個別のリファレンスページで正確なセットアップ手順を確認してください。

## 始める前に

* **Kameleoon プロジェクト。** すべての SDK で、Kameleoon アカウントに接続するためのサイトコードが必要です。まだ持っていない場合は、[新しいプロジェクトを追加](../../user-manual/project-management/manage-your-projects#新しいプロジェクトを追加する)し、プロンプトが表示されたら SDK オプションを選択します。
* **サーバーサイド SDK 用の API 認証情報。** サーバーサイド SDK は、クライアント ID とクライアントシークレットで認証します。これらは[API認証情報](../../user-manual/account-and-team-management/users-and-teams/api-credentials)で確認または生成できます。クライアントサイド SDK とモバイル SDK は、プロジェクトのサイトコードのみで認証します。
* **テスト用のフィーチャーフラグ。** クライアントの初期化後に確認できるものを用意するため、アカウントで[フィーチャーフラグを作成](../../user-manual/experimentation/feature-experimentation/create-and-manage-flags/create-a-feature-flag)します。

## SDK を選択する

プラットフォームを選択し、次に言語を選択します。各カードは、該当する SDK のインストール手順と初期化手順に直接リンクしています。

### ウェブ

<CardGroup cols={2}>
  <Card title="JavaScript/TypeScript" icon="js" href="/ja/developer-docs/sdks/web-sdks/js-sdk#はじめに">
    あらゆるウェブアプリで使える、フレームワークに依存しないクライアントサイド SDK です。SDK Installer を使うか、ビルド手順なしで 1 つの `<script>` タグでインストールします。
  </Card>

  <Card title="React" icon="react" href="/ja/developer-docs/sdks/web-sdks/react-js-sdk#はじめに">
    フックとプロバイダーコンポーネントを備えた React 向けバインディングです。SDK Installer を使ってインストールします。
  </Card>
</CardGroup>

### サーバーサイド

<CardGroup cols={3}>
  <Card title="Node.js" icon="node-js" href="/ja/developer-docs/sdks/web-sdks/nodejs-sdk#get-started">
    Node.js 向けのサーバーサイド SDK です。Deno では手動で設定します。SDK Installer を使ってインストールします。
  </Card>

  <Card title="Java" icon="java" href="/ja/developer-docs/sdks/web-sdks/java-sdk#はじめに">
    Java EE または Jakarta EE のアプリケーションサーバーで動作します。Maven Central からインストールします。
  </Card>

  <Card title="C#" icon="https://mintcdn.com/kameleoon/p9T1ivU-Y7xsfvqu/images/csharp-icon.svg?fit=max&auto=format&n=p9T1ivU-Y7xsfvqu&q=85&s=74b9bd4d241b0946a3021fffb00b77c3" href="/ja/developer-docs/sdks/web-sdks/csharp-sdk#はじめに" width="128" height="128" data-path="images/csharp-icon.svg">
    .NET のアプリケーションサーバーで動作します。NuGet、.NET CLI、または Paket を使ってインストールします。
  </Card>

  <Card title="PHP" icon="php" href="/ja/developer-docs/sdks/web-sdks/php-sdk#はじめに">
    PHP のバックエンドサーバーで動作し、cron ジョブのトラッキングも任意で利用できます。Composer を使ってインストールします。
  </Card>

  <Card title="Python" icon="python" href="/ja/developer-docs/sdks/web-sdks/python-sdk#はじめに">
    Django を含む Python のバックエンドサーバーで動作します。pip を使ってインストールします。
  </Card>

  <Card title="Ruby" icon="https://mintcdn.com/kameleoon/p9T1ivU-Y7xsfvqu/images/ruby-icon.svg?fit=max&auto=format&n=p9T1ivU-Y7xsfvqu&q=85&s=e741131bb9f0d64e256376a603e598be" href="/ja/developer-docs/sdks/web-sdks/ruby-sdk#はじめに" width="24" height="24" data-path="images/ruby-icon.svg">
    Ruby のバックエンドサーバーと Rails アプリで動作します。RubyGems を使ってインストールします。
  </Card>

  <Card title="Go" icon="golang" href="/ja/developer-docs/sdks/web-sdks/go-sdk#はじめに">
    Go のウェブアプリとサービスで動作します。`go get` で Kameleoon の GitHub リポジトリから直接インストールします。
  </Card>

  <Card title="Rust" icon="rust" href="/ja/developer-docs/sdks/web-sdks/rust-sdk#はじめに">
    Rust のサービスとウェブバックエンドで動作します。`tokio` などの非同期ランタイムが必要です。Cargo を使ってインストールします。
  </Card>

  <Card title="Elixir" icon="https://mintcdn.com/kameleoon/MNIWYtyXD0AitEFA/images/elixir-icon.svg?fit=max&auto=format&n=MNIWYtyXD0AitEFA&q=85&s=2238b2e7ff8124e338385674da760443" href="/ja/developer-docs/sdks/web-sdks/elixir-sdk#はじめに" width="24" height="24" data-path="images/elixir-icon.svg">
    Elixir のサービスとウェブバックエンドで動作します。Rust コアからビルドされるネイティブコードを含むため、Rust と Cargo が `PATH` に含まれている必要があります。Mix を使ってインストールします。
  </Card>
</CardGroup>

### モバイル

<CardGroup cols={2}>
  <Card title="Android" icon="android" href="/ja/developer-docs/sdks/mobile-sdks/android-sdk#はじめに">
    ネイティブ Android アプリ向けです。Gradle を使ってインストールします。
  </Card>

  <Card title="iOS" icon="swift" href="/ja/developer-docs/sdks/mobile-sdks/ios-sdk#はじめに">
    Swift 5.0 以降で構築されたネイティブ iOS アプリ向けです。CocoaPods または Swift Package Manager を使ってインストールします。
  </Card>

  <Card title="Flutter" icon="flutter" href="/ja/developer-docs/sdks/mobile-sdks/flutter-sdk#はじめに">
    Flutter フレームワークが対象とするすべてのプラットフォーム向けです。`pubspec.yaml` に依存関係を宣言してインストールします。
  </Card>

  <Card title="React Native" icon="react" href="/ja/developer-docs/sdks/mobile-sdks/react-native-sdk#はじめに">
    React SDK と同じ `@kameleoon/react-sdk` パッケージを使い、React Native 固有の依存関係を組み込んでいます。SDK Installer を使ってインストールします。
  </Card>
</CardGroup>

## SDK が初期化されたことを確認する

Kameleoon のすべての SDK は非同期で初期化されます。クライアントは作成されるとすぐにバックグラウンドでフラグ設定の取得を開始し、その後まもなく準備完了になります。クライアントの準備が完了する前にフラグを評価すると、期待するバリエーションではなくデフォルトまたはリファレンスのバリエーションが返される場合があります。フラグの結果を利用する前に、準備完了であることを確認してください。

ウェブ SDK とサーバーサイド SDK には、それぞれ最初の取得が完了するまで待機するブロッキング呼び出しがあります。

| 言語 | ブロッキング呼び出し |
| - | - |
| JavaScript, React, React Native, Node.js, Rust | `initialize()` |
| Elixir | `Client.initialize/1` |
| Java, C#, PHP | `waitInit()` |
| Python, Ruby | `wait_init()` |
| Go | `WaitInit()` |

Android、iOS、Flutter では、最初の取得が完了するまでクライアントの作成がブロックされることはありません。代わりに、各 SDK に記載されている準備状態の確認方法を使います。たとえば `isReady()`（Android）、`.ready`（iOS）、`isReadyAsync()`（Flutter）です。または、フラグの評価を SDK の `runWhenReady()` コールバックで囲みます。

クライアントの準備が完了したら、先ほど作成したフィーチャーフラグを評価して、統合がエンドツーエンドで動作することを確認します。初期化からフラグの評価、トラッキングまでの全体のライフサイクルについては、[SDK 実行フロー](../feature-experimentation/get-started/sdk-execution-flow)を参照してください。

## 次のステップ

* [SDK セットアップとフィーチャーフラグチュートリアル](../feature-experimentation/get-started/sdk-setup-and-feature-flag-tutorial): Node.js SDK をリファレンス実装として、フィーチャーフラグを有効化する手順をより詳しく説明します。
* [サポートされているプラットフォーム](../feature-experimentation/get-started/overview#サポートされているプラットフォーム): 言語ごとの SDK バージョンと機能の互換性マトリックスです。
* [プラットフォーム間で SDK を連携する](../feature-experimentation/get-started/cross-platform-sdks): ウェブ、モバイル、サーバーサイドの各 SDK 間で同じビジターコードを渡し、どこでもビジターに一貫した体験を提供します。
