🎯 Resumen Ejecutivo - Módulo 4: Sponsors
🚀 Inicio Rápido
1. Ejecutar Seed de Datos
# Ejecutar el script que crea datos fake
pnpm run db:seed:sponsors
Esto creará:
- ✅ 4 organizaciones (TechCorp, InnovateAI, CloudVenture, BlockchainHub)
- ✅ Sponsorships para hackathons existentes
- ✅ 5-10 challenges con tags y premios
- ✅ Items en shortlist (si hay submissions)
2. Verificar Usuario SPONSOR
El script automáticamente busca/crea un usuario SPONSOR. Si necesitas crear uno manualmente:
-- En Prisma Studio o SQL directo
UPDATE "Profile" SET role = 'SPONSOR' WHERE email = 'tu-email@example.com';
3. Iniciar Servidor y Login
pnpm dev
- Ve a
/sign-in - Inicia sesión con el usuario SPONSOR
- Serás redirigido a
/sponsor(dashboard)
📋 Features Implementadas
1. Gestión de Organizaciones 🏢
- Crear organización (te convierte en OWNER)
- Editar organización (solo OWNER/ADMIN)
- Ver lista de tus organizaciones
- Ver detalle con miembros y sponsorships
- Gestionar miembros (agregar/eliminar con roles)
Rutas:
/sponsor/organizations- Lista/sponsor/organizations/create- Crear/sponsor/organizations/[id]- Detalle/sponsor/organizations/[id]/edit- Editar
2. Gestión de Sponsorships 🤝
- Crear sponsorship para un hackathon
- Seleccionar tier (DIAMOND, PLATINUM, GOLD, SILVER, BRONZE, PARTNER)
- Editar tier y beneficios
- Ver lista de todos tus sponsorships
- Ver detalle con challenges asociados
Rutas:
/sponsor/sponsorships- Lista/sponsor/sponsorships/create- Crear/sponsor/sponsorships/[id]- Detalle/sponsor/sponsorships/[id]/edit- Editar
3. Gestión de Challenges 🎯
- Crear challenge para un sponsorship
- Agregar tags (máximo 10, dinámicos)
- Definir premios y descripción
- Editar challenge completo
- Eliminar challenge
- Ver submissions del hackathon
- Agregar a shortlist desde submissions
Rutas:
/sponsor/challenges/create- Crear/sponsor/challenges/[id]- Detalle/sponsor/challenges/[id]/edit- Editar/sponsor/challenges/[id]/submissions- Ver submissions
4. Shortlist ⭐
- Ver lista de proyectos destacados
- Agrupar por organización
- Ver detalle completo del proyecto
- Agregar notas por organización
- Eliminar de shortlist
Rutas:
/sponsor/shortlist- Lista/sponsor/shortlist/[submissionId]- Detalle
5. Dashboard de Sponsor 📊
- Estadísticas generales (organizaciones, sponsorships, challenges, shortlist)
- Acciones rápidas (crear org, crear sponsorship, ver shortlist)
- Lista de organizaciones recientes
- Lista de sponsorships recientes
Ruta:
/sponsor- Dashboard principal
6. Integración Pública 🌐
- Ver sponsors en página pública del hackathon
- Ver challenges en página pública del hackathon
- Links a sitios web de organizaciones
- Logos de organizaciones visibles
Ruta:
/hackathons/[slug]- Página pública (sección de sponsors y challenges)
🔄 Flujos Principales
Flujo 1: Crear Organización y Patrocinar Hackathon
1. Login como SPONSOR
↓
2. Dashboard → "Crear Organización"
↓
3. Llenar formulario → Crear
↓
4. Automáticamente eres OWNER
↓
5. Dashboard → "Crear Sponsorship"
↓
6. Seleccionar organización + hackathon + tier
↓
7. Crear sponsorship
↓
8. Desde detalle del sponsorship → "Crear Challenge"
↓
9. Llenar challenge (título, descripción, tags, premios)
↓
10. Challenge aparece en el sponsorship
Flujo 2: Agregar Proyectos al Shortlist
1. Desde detalle del challenge → "Ver Submissions"
↓
2. Ver lista de submissions del hackathon
↓
3. Click "Agregar a Shortlist" en cualquier submission
↓
4. Proyecto aparece en `/sponsor/shortlist`
↓
5. Puedes ver detalle, agregar notas, eliminar
Flujo 3: Ver en Página Pública
1. Visita cualquier hackathon público: `/hackathons/[slug]`
↓
2. Scroll hacia abajo
↓
3. Ver sección "Patrocinadores" con logos y tiers
↓
4. Ver sección "Challenges de Patrocinadores" con tags y premios
🧪 Qué Probar (Checklist Rápido)
✅ Backend (Server Actions)
- Crear organización
- Editar organización
- Agregar/eliminar miembro
- Crear sponsorship
- Editar sponsorship
- Crear challenge
- Editar/eliminar challenge
- Agregar a shortlist
- Eliminar de shortlist
✅ Frontend (UI)
- Dashboard carga y muestra estadísticas
- Lista de organizaciones funciona
- Crear/editar organización funciona
- Lista de sponsorships funciona
- Crear/editar sponsorship funciona
- Crear/editar challenge funciona
- Ver submissions funciona
- Agregar a shortlist funciona
- Lista de shortlist funciona
- Detalle de shortlist funciona
✅ Integración
- Sponsors se muestran en página pública
- Challenges se muestran en página pública
- Links funcionan
- Imágenes se cargan
✅ Validaciones
- No se puede duplicar sponsorship
- No se puede duplicar shortlist
- No se puede eliminar último OWNER
- Validaciones de campos funcionan
✅ RBAC (Permisos)
- Solo SPONSOR/ADMIN accede a
/sponsor - Solo miembros pueden ver/editar
- Solo OWNER/ADMIN gestiona miembros
📊 Datos Esperados Después del Seed
Después de pnpm run db:seed:sponsors:
-
Organizaciones: 4
- TechCorp Solutions
- InnovateAI
- CloudVenture
- BlockchainHub
-
Sponsorships: Depende de hackathons disponibles (hasta 4)
- Con diferentes tiers (DIAMOND, PLATINUM, GOLD, etc.)
-
Challenges: 5-10
- Desafío de Inteligencia Artificial
- Desafío de Blockchain
- Desafío de Cloud Computing
- Desafío de UX/UI
- Desafío de Impacto Social
-
Shortlist Items: Depende de submissions disponibles (hasta 5)
🎯 Puntos Clave para Probar
1. Roles y Permisos
- Verifica que solo SPONSOR/ADMIN puede acceder
- Verifica que solo miembros de organización pueden gestionar
- Verifica que solo OWNER/ADMIN puede gestionar miembros
2. Validaciones
- Intenta crear sponsorship duplicado (debe fallar)
- Intenta agregar submission duplicada al shortlist (debe fallar)
- Intenta eliminar último OWNER (debe fallar)
3. Flujos Completos
- Crea organización → Crea sponsorship → Crea challenge → Agrega a shortlist
- Verifica que todo se muestra correctamente en dashboard
- Verifica que se muestra en página pública del hackathon
4. UI/UX
- Verifica que los links funcionan
- Verifica que las imágenes se cargan (logos)
- Verifica que los formularios validan correctamente
- Verifica que los mensajes de error son claros
🐛 Troubleshooting
"No autenticado"
- Verifica que el usuario tenga rol
SPONSORoADMIN - Verifica que estés logueado
"No hay hackathons disponibles"
- Ejecuta primero:
pnpm run db:seed:organizer-hackathons - O crea hackathons manualmente
"No hay submissions"
- Ejecuta primero:
pnpm run db:seed:teams-submissions - O crea submissions manualmente
Imágenes no se muestran
- Los logos usan
via.placeholder.com(servicio externo) - Necesitas conexión a internet
- O reemplaza con URLs reales
📚 Documentación Completa
Para más detalles, consulta:
- Guía Completa de Testing:
docs/GUIA-TESTING-MODULO-4-SPONSORS.md - Plan de Ejecución:
docs/PLAN-EJECUCION-MODULO-4-SPONSORS.md
✅ ¡Todo Listo!
Ejecuta el seed, inicia sesión como SPONSOR y explora todas las features. ¡Disfruta probando! 🚀