Este proyecto surgió para apoyar a un establecimiento tradicional de comida en Costa Rica que siempre había operado con papel y lápiz, pero que al crecer necesitaba un mejor registro de sus ventas diarias.

El sistema fue diseñado a la medida para un negocio que opera las 24 horas del día durante toda la semana, por lo que el software a construir debía ser sumamente robusto y tolerante a fallos.

Aunque inicialmente se solicitó únicamente una interfaz en tablet para que el personal de salón pudiera registrar y controlar los pedidos, posteriormente decidí desarrollar también una vista de cocina para ampliar las capacidades del sistema y que pudiera adaptarse a otros negocios.

Contexto

  • React
  • Vite
  • Hono
  • Better Auth
  • SQLite
  • Cloudflare D1
  • Cloudflare Workers
  • Cloudflare Pages

Stack tecnológico

  • Desarrollo de una interfaz optimizada para tablets con separación de roles entre la toma de pedidos en el salón y la visualización de pendientes en la cocina.
  • Implementación de tolerancia a fallos mediante el uso de una base de datos local, permitiendo que la aplicación siga funcionando sin conexión a internet y sincronice los datos una vez restablecida la red.
  • Arquitectura flexible basada en SQLite pensada para facilitar el despliegue tanto en servidores externos como de manera local en cualquier computadora del negocio.

Puntos clave

  • Diseñar un sistema para un entorno real de alta disponibilidad y con cortes frecuentes de conectividad me enseñó la importancia de priorizar la resiliencia y el funcionamiento sin conexión en aplicaciones críticas.
  • Aprendí a tomar decisiones de infraestructura adaptables, planificando el sistema de tal forma que pudiera correr en la nube por requerimiento inicial, pero manteniendo la simplicidad necesaria para migrarlo a una red local sin fricciones si fuera necesario.

Aprendizajes

Inicio del sistema con métricas rápidas del local.

Administración de productos y menú operativo.

Gestión de mesas y distribución del salón.

Vista de salón orientada a atención y control de pedidos.

Vista de cocina con foco en preparación y prioridades.