Proyecto Quiosco de Comida



Descripción:
Quiosco de Comida es una aplicación completa para la gestión de pedidos en restaurantes y bares. Fue el primer proyecto donde trabajé con Next.js, explorando a fondo el renderizado SSR, las Server Actions y la combinación de CSR + SSR en distintas secciones del sistema.
La aplicación cuenta con un panel administrativo donde se pueden agregar, editar, eliminar y gestionar productos, así como administrar pedidos en tiempo real. Cada pedido puede marcarse como completado, y el cliente lo visualiza en una pantalla pública que indica que su orden está lista para retirar.
Incluye una galería de productos con paginación, buscador instantáneo, y una interfaz totalmente construida con TailwindCSS. Todo el código está escrito en TypeScript con validaciones mediante Zod y un modelo de datos gestionado con Prisma conectado a PostgreSQL.
Todos los apartados del proyecto están diseñados como componentes reutilizables, con un orden y estructura clara. Fue una experiencia clave para comprender cómo configurar y desplegar Next.js con bases de datos reales y tipado estricto de punta a punta.
Aprendizajes y características técnicas:
- Primer uso de Next.js comprendiendo el flujo de Server Components, SSR y Server Actions.
- Integración de Prisma con PostgreSQL y aprendizaje de su configuración completa (schemas, migraciones, seeds).
- Validación estricta de formularios y datos con Zod y TypeScript.
- Implementación de paginación y búsqueda en consultas server-side.
- Construcción de un panel administrativo con control total de productos (crear, editar, eliminar) y gestión de pedidos con estados.
- Creación de una pantalla pública que actualiza pedidos en tiempo real para los clientes.
- Diseño modular y componentes reutilizables con estructura clara, priorizando mantenibilidad y escalabilidad.
- Comprensión profunda de cómo combinar SSR y CSR en un mismo flujo de renderizado.
- Configuración, despliegue y buenas prácticas de Next.js en entornos productivos.
Tecnologías:
- Next.js
- TypeScript
- Tailwind CSS
- Zod
- React
- Prisma
- PostgreSQL