Caerus LogoCaerusDocs

Quickstart & Sample: Caerus Cine

Sample Project

Aplicación de referencia completa construida con @caerus-dev/sdk. Demuestra reserva concurrente de butacas de cine, expiración automática por TTL y cómo las políticas FAIL vs QUEUE transforman la experiencia sin cambiar código.

Idea Central del Sample

En un cine, cuando dos personas intentan reservar la misma butaca exactamente en el mismo instante, deben colisionar de verdad. Las butacas se retienen temporalmente por unos minutos; si nadie las paga, se liberan solas al expirar el TTL; y si el usuario cancela su selección, vuelven de inmediato a estar disponibles.

Este proyecto de referencia corre contra el motor de Caerus a través del paquete oficial @caerus-dev/sdk y ejercita los trece verbos de su API pública (recursos unitarios, saldo con cupo para el candy bar, confirmaciones definitivas y cancelaciones).

Dos Películas, Dos Políticas de Conflicto

Las dos funciones de la cartelera tienen configuraciones de plantilla radicalmente distintas en el dashboard:

Plantilla butaca (FAIL)
🎬 El Último Horizonte

• Política de conflicto: FAIL

• Si dos usuarios piden la misma butaca, el segundo recibe de inmediato un ConflictError y la pierde.

• Cuando el primero libera la butaca, no hay traspaso automático; queda libre para quien llegue primero.

Plantilla butaca_fila (QUEUE)
🎬 Lluvia de Neón

• Política de conflicto: QUEUE (Fila de espera)

• Si el segundo pide la butaca ocupada, queda automáticamente en la fila.

• Cuando el primero libera la butaca o vence su TTL, el motor se la asigna solo al segundo en segundos.

Mismo código en la aplicación: La diferencia de comportamiento entre ambas películas reside 100% en la configuración de la plantilla en el dashboard de Caerus, sin necesidad de modificar una sola línea de código en el backend.

Repositorio Oficial en GitHub

Todo el código fuente del proyecto, el esquema de variables de entorno (.env.example), la arquitectura del proxy de observabilidad del SDK y las instrucciones detalladas para ejecutarlo localmente se encuentran disponibles en GitHub:

caerus-dev/demo-sdk

Next.js · TypeScript · @caerus-dev/sdk · Proxy de observabilidad · Docker Local

Explorar Repositorio en GitHub
💡 ¿Qué encontrarás en el README del repositorio?
  • Guía de inicio rápido para correr en local con npm install y npm run dev.
  • Instrucciones para probar con dos pestañas de navegador simultáneas simulando concurrencia real vía sessionStorage.
  • Variables de entorno para conectar contra Caerus Cloud o el motor local con Docker Compose.
  • Detalles técnicos del Proxy del SDK para registrar tiempos y llamadas en vivo.