> ## 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.

# Inicio rápido

> Compare de un vistazo los SDK web, de servidor y móviles de Kameleoon y vaya directamente al que necesita instalar e inicializar.

Kameleoon ofrece un SDK específico para cada plataforma web, de servidor y móvil importante. Busque a continuación el SDK de su stack y siga su enlace para consultar los pasos de configuración exactos en la página de referencia de ese SDK.

## Antes de empezar

* **Un proyecto de Kameleoon.** Cada SDK necesita un site code para conectarse a su cuenta de Kameleoon. Si todavía no tiene uno, [añada un nuevo proyecto](../../user-manual/project-management/manage-your-projects#añadir-un-nuevo-proyecto) y elija la opción de SDK cuando se le solicite.
* **Credenciales de API para los SDK de servidor.** Los SDK de servidor se autentican con un client ID y un client secret. Encuéntrelos o genérelos en [Credenciales de API](../../user-manual/account-and-team-management/users-and-teams/api-credentials). Los SDK de cliente y los móviles se autentican únicamente con el site code de su proyecto.
* **Un feature flag con el que probar.** [Cree un feature flag](../../user-manual/experimentation/feature-experimentation/create-and-manage-flags/create-a-feature-flag) en su cuenta para tener algo que comprobar cuando el cliente se inicialice.

## Elegir su SDK

Seleccione su plataforma y, a continuación, su lenguaje. Cada tarjeta enlaza directamente con los pasos de instalación e inicialización del SDK correspondiente.

### Web

<CardGroup cols={2}>
  <Card title="JavaScript/TypeScript" icon="js" href="/es/developer-docs/sdks/web-sdks/js-sdk#primeros-pasos">
    SDK de cliente independiente del framework, para cualquier aplicación web. Instálelo con el SDK Installer o con una sola etiqueta `<script>`, sin paso de compilación.
  </Card>

  <Card title="React" icon="react" href="/es/developer-docs/sdks/web-sdks/react-js-sdk#primeros-pasos">
    Enlaces de React con hooks y un componente provider. Instálelo con el SDK Installer.
  </Card>
</CardGroup>

### Servidor

<CardGroup cols={3}>
  <Card title="Node.js" icon="node-js" href="/es/developer-docs/sdks/web-sdks/nodejs-sdk#primeros-pasos">
    SDK de servidor para Node.js, con configuración manual para Deno. Instálelo con el SDK Installer.
  </Card>

  <Card title="Java" icon="java" href="/es/developer-docs/sdks/web-sdks/java-sdk#primeros-pasos">
    Se ejecuta en servidores de aplicaciones Java EE o Jakarta EE. Instálelo desde 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="/es/developer-docs/sdks/web-sdks/csharp-sdk#primeros-pasos" width="128" height="128" data-path="images/csharp-icon.svg">
    Se ejecuta en servidores de aplicaciones .NET. Instálelo con NuGet, la CLI de .NET o Paket.
  </Card>

  <Card title="PHP" icon="php" href="/es/developer-docs/sdks/web-sdks/php-sdk#primeros-pasos">
    Se ejecuta en servidores backend PHP, con seguimiento opcional de tareas cron. Instálelo con Composer.
  </Card>

  <Card title="Python" icon="python" href="/es/developer-docs/sdks/web-sdks/python-sdk#primeros-pasos">
    Se ejecuta en servidores backend Python, incluido Django. Instálelo con 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="/es/developer-docs/sdks/web-sdks/ruby-sdk#primeros-pasos" width="24" height="24" data-path="images/ruby-icon.svg">
    Se ejecuta en servidores backend Ruby y en aplicaciones Rails. Instálelo con RubyGems.
  </Card>

  <Card title="Go" icon="golang" href="/es/developer-docs/sdks/web-sdks/go-sdk#primeros-pasos">
    Se ejecuta en aplicaciones web y servicios Go. Instálelo directamente desde el repositorio de GitHub de Kameleoon con `go get`.
  </Card>

  <Card title="Rust" icon="rust" href="/es/developer-docs/sdks/web-sdks/rust-sdk#primeros-pasos">
    Se ejecuta en servicios Rust y backends web. Requiere un runtime asíncrono, como `tokio`. Instálelo con 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="/es/developer-docs/sdks/web-sdks/elixir-sdk#primeros-pasos" width="24" height="24" data-path="images/elixir-icon.svg">
    Se ejecuta en servicios Elixir y backends web. Incluye código nativo compilado a partir del núcleo de Rust, por lo que Rust y Cargo deben estar en su `PATH`. Instálelo con Mix.
  </Card>
</CardGroup>

### Móvil

<CardGroup cols={2}>
  <Card title="Android" icon="android" href="/es/developer-docs/sdks/mobile-sdks/android-sdk#primeros-pasos">
    Para aplicaciones Android nativas. Instálelo con Gradle.
  </Card>

  <Card title="iOS" icon="swift" href="/es/developer-docs/sdks/mobile-sdks/ios-sdk#primeros-pasos">
    Para aplicaciones iOS nativas creadas con Swift 5.0 o superior. Instálelo con CocoaPods o Swift Package Manager.
  </Card>

  <Card title="Flutter" icon="flutter" href="/es/developer-docs/sdks/mobile-sdks/flutter-sdk#primeros-pasos">
    Para todas las plataformas a las que se dirige el framework Flutter. Instálelo declarando una dependencia en `pubspec.yaml`.
  </Card>

  <Card title="React Native" icon="react" href="/es/developer-docs/sdks/mobile-sdks/react-native-sdk#primeros-pasos">
    Usa el mismo paquete `@kameleoon/react-sdk` que el SDK de React, con las dependencias específicas de React Native incorporadas. Instálelo con el SDK Installer.
  </Card>
</CardGroup>

## Comprobar que el SDK está inicializado

Todos los SDK de Kameleoon se inicializan de forma asíncrona: el cliente empieza a obtener la configuración de sus flags en segundo plano en cuanto lo crea y queda listo poco después. Evaluar un flag antes de que el cliente esté listo puede devolver una variación predeterminada o de referencia en lugar de la que espera, así que confirme que el cliente está listo antes de confiar en los resultados de los flags.

Los SDK web y de servidor exponen cada uno una llamada bloqueante que espera a que termine esa primera obtención:

| Lenguaje | Llamada bloqueante |
| - | - |
| JavaScript, React, React Native, Node.js, Rust | `initialize()` |
| Elixir | `Client.initialize/1` |
| Java, C#, PHP | `waitInit()` |
| Python, Ruby | `wait_init()` |
| Go | `WaitInit()` |

Android, iOS y Flutter no bloquean la creación del cliente durante la primera obtención. Use en su lugar la comprobación de disponibilidad documentada para ese SDK, como `isReady()` (Android), `.ready` (iOS) o `isReadyAsync()` (Flutter), o envuelva la evaluación del flag en el callback `runWhenReady()` del SDK.

Cuando el cliente esté listo, evalúe el feature flag que creó antes para confirmar la integración de principio a fin. Para conocer el ciclo de vida completo, desde la inicialización hasta la evaluación de flags y el seguimiento, consulte [Flujo de ejecución del SDK](../feature-experimentation/get-started/sdk-execution-flow).

## Siguientes pasos

* [Configuración del SDK y tutorial de feature flags](../feature-experimentation/get-started/sdk-setup-and-feature-flag-tutorial): una guía más detallada para activar un feature flag, con el SDK de Node.js como implementación de referencia.
* [Plataformas compatibles](../feature-experimentation/get-started/overview#plataformas-compatibles): la matriz de compatibilidad completa de versiones y funciones de los SDK por lenguaje.
* [Coordinar los SDKs entre plataformas](../feature-experimentation/get-started/cross-platform-sdks): transmita el mismo código de visitante entre los SDK web, móviles y de servidor para que cada visitante tenga una experiencia coherente en todas partes.
