# Instalación y requisitos

> Prepara JDK y Gradle y añade CrossFly al proyecto — empieza por el escritorio.

Source: https://crossfly.dev/es/docs/get-started/installation — CrossFly documentation. Full docs as one file: https://crossfly.dev/llms-full.txt

# Instalación y requisitos

En pocos minutos tendrás el entorno listo para ejecutar en el **escritorio** — el camino más rápido para
comenzar (iteración rápida, sin emulador).

## Requisitos previos
- **JDK 17** (LTS). Verifica:
  ```bash
  java -version
  ```
- **Gradle** — o simplemente usa el *wrapper* incluido en el proyecto (`gradlew`):
  ```bash
  ./gradlew --version
  ```

## Estructura del proyecto
Una app CrossFly es un proyecto **multimódulo Gradle**: un módulo **`core`** (tu UI y lógica) + un
**launcher por plataforma**. Añade la dependencia de CrossFly al `core` e incluye el launcher del objetivo
que vas a ejecutar:
```
:core     → seu código (Windows, componentes) + dependência do CrossFly
:lwjgl3   → launcher desktop (comece por aqui)
:android  :ios  :web   → demais alvos
```
Las coordenadas exactas de la dependencia (`dev.crossfly:crossfly-core` + versión) y de los launchers vienen del
`build.gradle` del proyecto-modelo — mantenlas conforme a la plantilla del repositorio.

## Requisitos por plataforma
| Objetivo | Necesita de |
|---|---|
| 🖥️ Escritorio (LWJGL3) | solo el JDK — **empieza aquí** |
| 🤖 Android | Android SDK/NDK |
| 🍎 iOS | **macOS + Xcode** |
| 🌐 Web (TeaVM) | un navegador (WebGL2) |

> **Biblioteca nativa:** cada plataforma empaqueta la `crossfly-lib` (JNI), cargada en el arranque (excepto
> en WebGL). En el escritorio, necesita estar en el `java.library.path` (ver [Escritorio](/docs/platforms/desktop-lwjgl3)).

## Por qué empezar por el escritorio
El escritorio da el **ciclo compilar→ejecutar más corto** (segundos, sin emulador). Validas la UI allí y solo
vas al móvil cuando la pantalla esté lista.

## Próximos pasos
→ [Quickstart: Hello World en ~10 min](/docs/get-started/quickstart)

## Ver también
- Fuente canónica: Capítulo 4 — Bootstrap y Ciclo de Vida · [Plataformas](/docs/platforms)
