Panorama del Proyecto
La venta de tickets a gran escala exige más que un monolito. Esta plataforma ofrece ventas tolerantes a fallos mediante un conjunto de servicios especializados, sincronizados con NATS JetStream y listos para desplegarse en Kubernetes.
Contexto de Negocio
- Diseñado como blueprint para marketplaces que requieren flujos de compra y pago resilientes.
- Demuestra patrones de eventos probados, listos para evolucionar hacia entornos productivos de alta disponibilidad.
- Facilita la incorporación de equipos frontend gracias a un cliente Next.js moderno ya conectado a las APIs.
Capacidades Clave
- Topología de microservicios que cubre autenticación, inventario de tickets, órdenes, pagos y expiraciones.
- Bus de eventos JetStream integrado en la aplicación para entregas como mínimo una vez sin infraestructura adicional.
- Acceso seguro con JWT empleando cookies HTTP-only y paquetes compartidos de validación en
common/. - Frontend responsivo con Next.js + Tailwind CSS, ofreciendo una experiencia de checkout premium.
- Expiraciones automatizadas que liberan tickets si el comprador abandona el proceso.
Arquitectura Destacada
- Servicios dockerizados orquestados con Kubernetes y loops locales acelerados mediante Skaffold.
- MongoDB almacena datos transaccionales mientras Redis puede respaldar caché transitorio o replays de eventos.
- Paquetes TypeScript compartidos que mantienen coherentes los eventos, modelos y manejo de errores.
- Jest y Supertest protegen los flujos críticos mediante pruebas unitarias e integraciones.
Notas de Implementación
- Prioriza código observable y mantenible: estructura modular, namespaces dedicados y middleware defensivo.
- Flujos de mensajería en tiempo real documentados para equipos que extienden la plataforma o integran nuevos canales.
- Fundamentos con licencia MIT que invitan a personalizar el sistema para corporativos o startups.
Mi Rol
Arquitecté el sistema distribuido, implementé los contratos de servicio y reforcé el tooling DevOps para que los equipos iteren rápido sin comprometer la confiabilidad.
Stack Tecnológico
Node.js · TypeScript · Next.js · Express · NATS JetStream · MongoDB · Kubernetes · Docker · Tailwind CSS
Explora el Código
- Repositorio GitHub: rommel-rodriguez/distributed-ticketing-system