Requisitos
Qué instalar antes de ejecutar tu paquete, con Docker o sin él.
Para el paquete Full Stack
Qué contiene tu paquete
| Paquete | Aplicaciones en la descarga | Funciona por sí solo |
|---|---|---|
| Full Stack | API, sitio para estudiantes, panel de administración | Sí, las tres juntas |
| Sitio para estudiantes | Sitio para estudiantes | Sí, con los datos de ejemplo incluidos hasta que conectes una API de Learnio |
| Panel de administración | Panel de administración | Sí, con una simulación en el navegador hasta que conectes una API de Learnio |
| API | API | Sí, solo sirve la API |
Un paquete de una sola aplicación no incluye las demás. Los frontends pueden usar una API que ya tengas en marcha, pero el código de la API solo está en los paquetes Full Stack y API.
Con Docker
- Docker Desktop en macOS o Windows, o Docker Engine con el plugin de Compose en Linux. El paquete Full Stack se inicia con un solo comando
docker compose. - Una conexión a internet para la primera construcción, que descarga las imágenes base y las dependencias.
- Nada más: Docker incluye Node.js, y la base de datos es un archivo SQLite dentro de un volumen de Docker.
Con Docker
- Docker Desktop en macOS o Windows, o Docker Engine en Linux. Tu aplicación tiene su propio
Dockerfile; no necesitas Compose. - Una conexión a internet para la primera construcción, que descarga la imagen base y las dependencias.
Sin Docker
- Node.js 22 o 24, las versiones LTS con las que se prueba Learnio. Node 26 también funciona, pero ya no incluye Corepack: ejecuta antes
npm install -g corepack. - Yarn 4, a través de Corepack. Ejecuta
corepack enableuna vez; cada aplicación fija su propia versión de Yarn, así queyarnelige la correcta.
Base de datos
Ni servidor de base de datos ni compilador de C++. La API usa SQLite por defecto y crea el archivo por ti; Docker también usa SQLite. MySQL es compatible mediante un cambio de configuración, sin cambiar el código.
Puertos
Cada aplicación escucha en un puerto local fijo. Asegúrate de que nada más los use o, con Docker, mueve uno con SITE_PORT, ADMIN_PORT o API_PORT en un .env junto a docker-compose.yml.
| Aplicación | Puerto |
|---|---|
| API | 8000 |
| Sitio para estudiantes | 3030 |
| Panel de administración | 3031 |
Puerto
El sitio para estudiantes escucha en el puerto 3030. Asegúrate de que nada más lo use.
Puerto
El panel de administración escucha en el puerto 3031. Asegúrate de que nada más lo use.
Puerto
La API escucha en el puerto 8000. Asegúrate de que nada más lo use.
Una API a la que conectarse
No necesitas nada para probar tu aplicación: funciona con sus propios datos de ejemplo. Para usar datos reales, necesita una API de Learnio en ejecución, cuya dirección configuras en su .env. La API se vende como un paquete propio.
Servicios opcionales
Ninguno de ellos es necesario para ejecutar Learnio en local. Cada uno se activa con sus claves en back-end/.env.
| Servicio | Sin él |
|---|---|
| Cloudflare R2 u otro bucket compatible con S3 | Los archivos multimedia se sirven desde los archivos de ejemplo incluidos en las aplicaciones; solo deja de funcionar la subida de nuevos archivos multimedia. |
| Resend, para el correo electrónico | Cada mensaje se escribe en el registro de la API. |
| Stripe y PayPal | El pago funciona con un simulador integrado que completa los pedidos sin cobrar a nadie. Los cursos gratuitos nunca necesitan un procesador. |
| Claves de Google, OpenAI o DeepSeek | El asistente de IA pide al administrador su propia clave en el navegador. |
| Un servidor de Jitsi Meet | El calendario muestra las clases en vivo como no disponibles. |