🎯 Bienvenido a PuntoHack
PuntoHack es una plataforma completa de gestión de hackathons diseñada para facilitar la organización, participación y evaluación de eventos de programación.
📖 Sobre esta Documentación
Esta documentación técnica está diseñada para desarrolladores que continuarán trabajando en el proyecto. Proporciona toda la información necesaria para:
- ✅ Entender la arquitectura completa del sistema
- ✅ Comprender cada módulo y su funcionamiento
- ✅ Seguir los flujos de usuario por rol
- ✅ Implementar nuevas funcionalidades
- ✅ Mantener y extender el código existente
- ✅ Resolver problemas comunes
🎯 Objetivo de la Documentación
Esta documentación es el "Santo Grial Técnico" del proyecto. Cualquier pregunta técnica debe tener respuesta aquí, permitiendo que el equipo pueda trabajar de manera autónoma sin necesidad de consultas constantes.
📋 Estructura de la Documentación
🚀 Getting Started
Guías rápidas para comenzar: instalación, configuración, primeros pasos.
🏗️ Arquitectura
Arquitectura completa del sistema, modelo de datos, RBAC, patrones de diseño.
💻 Desarrollo
Guías de desarrollo, estándares de código, testing, deployment.
📦 Módulos
Documentación detallada de cada módulo: queries, actions, validaciones.
👥 Flujos de Usuario
Flujos completos por cada rol: PARTICIPANT, JUDGE, ORGANIZER, SPONSOR, ADMIN.
🔌 Integraciones
Configuración y uso de Clerk, Supabase, Prisma, Sentry.
💼 Lógica de Negocio
Reglas de negocio críticas: ciclo de vida de hackathons, evaluación, leaderboard.
📚 Referencia
Referencia completa de API routes, Server Actions, queries, manejo de errores.
🎨 Características de esta Documentación
- ✅ Diagramas detallados: ERM, RBAC, flujos, arquitectura, infraestructura
- ✅ Componentes React: Ejemplos interactivos y visualizaciones
- ✅ Código completo: Ejemplos reales del proyecto
- ✅ Casos de uso: Escenarios detallados por rol
- ✅ Troubleshooting: Soluciones a problemas comunes
🚀 Comenzar
Si eres nuevo en el proyecto, te recomendamos seguir este orden:
- Getting Started → Quick Start - Configuración inicial
- Architecture → Overview - Entender la arquitectura
- Architecture → Database Schema - Modelo de datos
- User Flows → Participant Flow - Flujo principal
- Development → Setup Guide - Configurar entorno
📊 Estado del Proyecto
Versión: MVP Completo
Estado: ✅ Funcional y listo para producción
Última Actualización: Enero 2025
Módulos Implementados
- ✅ Core Layer: RBAC, DB, Auth, Errors, Validations
- ✅ Users Module: Gestión completa de usuarios
- ✅ Hackathons Module: CRUD completo, estados, criterios
- ✅ Teams Module: Formación de equipos, invitaciones
- ✅ Submissions Module: Envío y edición de proyectos
- ✅ Evaluation Module: Sistema de scoring ponderado
- ✅ Sponsors Module: Organizaciones, sponsorships, challenges
- ✅ Notifications Module: Sistema de notificaciones
Features Principales
- ✅ Supabase Realtime: Actualizaciones en tiempo real
- ✅ Sistema de Toasts: Feedback visual global
- ✅ Cron Jobs: Cambios automáticos de estado
- ✅ Testing: 94+ tests pasando
- ✅ TypeScript: Type-safety completo
🎯 Próximos Pasos
- Lee la sección Getting Started
- Revisa la Arquitectura del sistema
- Consulta los Flujos de Usuario para entender los procesos
- Explora las Integraciones para configurar servicios
¿Listo para comenzar? → Quick Start