UTESALAB × Visit Santiago — Desafío de Innovación Abierta
Landing y backoffice para el primer reto de innovación abierta de UTESALAB

Mi rol
Desarrollo full-stack del frontend: landing pública, formulario de inscripción, backoffice administrativo y la integración con el backend.
Qué construí
Landing pública: hero, presentación del reto, criterios de participación, fases del desafío, programa de apoyo y un formulario de inscripción de equipos en wizard de 5 pasos, protegido contra bots.
Backoffice administrativo: login, dashboard con indicadores y gráficos, listado de equipos inscritos con búsqueda y exportación a PDF y Excel, y vista de detalle por equipo también exportable.
Integración con backend real: comunicación segura entre el frontend y la API del backend, evitando restricciones de origen cruzado en producción.
Autenticación y control de acceso: login contra el backend, sesión persistente y protegida, y control de acceso a las rutas administrativas según el estado de la sesión.
Verificación de la integración: pruebas manuales de los flujos principales (login, inscripción, gestión de equipos) contra el backend real.
Detalles interesantes a destacar
Comunicación servidor a servidor en lugar de llamadas directas desde el navegador, para evitar problemas de seguridad y compatibilidad entre dominios en producción.
Manejo correcto de tokens de verificación de un solo uso, asegurando que se validen una sola vez en el lugar correcto del flujo.
Protección de rutas a nivel de servidor, sin depender del estado del cliente para decidir qué puede ver cada usuario.


