Requisitos
Qué instalar antes de ejecutar tu paquete, con Docker o sin él.
Para el paquete Full Stack
Qué contiene cada paquete
| Paquete | Aplicaciones en la descarga | Funciona por sí solo |
|---|---|---|
| Full Stack | API, sitio web público, panel del organizador | Sí, las tres juntas |
| Ticketing Website | Sitio web público | No: necesita la API de Ticketory en marcha |
| Organiser Dashboard | Panel del organizador | No: necesita la API de Ticketory en marcha |
| API Backend | API | Sí, solo sirve la API |
Un paquete de una sola aplicación no incluye las otras aplicaciones. El sitio web y el panel leen todo de la API de Ticketory, y el código de la API solo está en los paquetes Full Stack y Backend API.
Con Docker
- Docker Desktop en macOS o Windows, o Docker Engine con el plugin de Compose en Linux, con Docker Compose 2.24 o más reciente, que incluye todo Docker Desktop actual;
docker compose versionmuestra la tuya. La pila completa se inicia con un solo comandodocker compose, ydocker-compose.ymlleeback-end/.envsolo cuando existe, un ajuste que las versiones antiguas de Compose rechazan. - 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 más reciente, la versión que declara cada aplicación en
engines. Las imágenes de Docker funcionan con Node.js 24. Comprueba la tuya connode -v. - Yarn 4, mediante Corepack. Ejecuta
corepack enableuna vez; cada aplicación fija su propia versión de Yarn enpackageManager, así queyarnelige la correcta. Si tu Node.js no tiene Corepack (Node.js 25 y posteriores lo omiten), instálalo antes connpm install -g corepack. - Ningún paquete global.
Base de datos
Ningún servidor de base de datos. La API usa SQLite por defecto y yarn seed crea el archivo por ti; Docker también usa SQLite. MySQL se admite con un cambio de configuración, no de 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 web público | 3030 |
| Panel del organizador | 3031 |
Puerto
El sitio web escucha en el puerto 3030 y espera la API en el 8000. Asegúrate de que nada más los use.
Puerto
El panel escucha en el puerto 3031 y espera la API en el 8000. Asegúrate de que nada más los use.
Puerto
La API escucha en el puerto 8000 y, por defecto, acepta el sitio web desde el 3030 y el panel desde el 3031. Asegúrate de que nada más use el puerto 8000.
Una API a la que conectarse
Tu aplicación no tiene datos propios. Necesita la API de Ticketory en marcha y con datos de ejemplo, cuya dirección defines en su .env o pasas como argumento de construcción. La API se vende como su propio paquete, el Backend API, y forma parte del Full Stack.
Servicios opcionales
Ninguno de estos hace falta para ejecutar Ticketory en local. Cada uno se activa con sus variables en el .env de la API; una variable dejada comentada mantiene su función desactivada.
| Servicio | Sin él |
|---|---|
| Una cuenta de Stripe o PayPal | El pago ofrece Test payment, que marca un pedido como pagado sin mover dinero, así que todo el flujo funciona. Las entradas gratuitas nunca necesitan un proveedor. |
| Una cuenta de Resend para el correo | Cada correo (entradas, códigos de registro, restablecimientos de contraseña, novedades de reembolso, recordatorios de eventos) se escribe en el registro de la API en lugar de enviarse. |
| Cloudflare R2 u otro bucket compatible con S3 | Las subidas se guardan en el propio disco de la API (con Docker, en el volumen de datos), y la API sirve ella misma las imágenes de ejemplo. |
| Una clave de IA de Google Gemini, OpenAI o DeepSeek, cualquiera de las tres | El asistente de eventos con IA dice que necesita una clave de proveedor y lista las tres que acepta, y no se cobra nada. Todo lo demás funciona. |
| Una clave de Google Gemini, para el estudio de recintos | El estudio de recintos con IA dice que necesita una y no genera nada, incluso cuando el asistente funciona con una clave de OpenAI o DeepSeek. |
| Una clave para el servidor MCP | POST /api/mcp rechaza todas las peticiones. |
Cada servicio de pago te factura en tu propia cuenta con ese proveedor. Ticketory no cobra impuestos por sí mismo: configura los impuestos de tu país antes de aceptar pagos reales.
Mapas
Los mapas del panel dibujan teselas de OpenFreeMap, y la búsqueda de lugares del editor de recintos usa el servicio público Photon. Ambos necesitan conexión a internet y ninguna clave ni cuenta; ninguno promete disponibilidad, y puedes apuntarlos a tus propios servicios.