- Alex Alfaro
- Manuel Aguilera
- Vicente Rosales
- Eliseo Guarda
- Resumen del Proyecto
- Requerimientos
- Diseño de prototipos
- Librerías en Angular
- Objetivos Entrega Parcial
- Instrucciones de Ejecución
Este sistema está diseñado para gestionar una plataforma competitiva de speedruns, donde los usuarios pueden subir sus tiempos, recibir validaciones por parte de administradores y ver reflejadas sus posiciones en rankings dinámicos. La aplicación permitirá también interacción comunitaria a través de foros, visualización de perfiles y personalización del usuario. Todo esto enfocado en fomentar la competitividad y la transparencia dentro del entorno de los videojuegos.
| Tipo | ID | Título | Descripción |
|---|---|---|---|
| Funcional | RF-01 | Gestión de puntaje de speedrunners | El sistema ajustará automáticamente el puntaje de los usuarios en función de su desempeño. Se sumarán puntos a quienes estén en el top 3 de cada categoría y se restarán a quienes no mantengan un rendimiento competitivo. |
| Funcional | RF-02 | Verificación de speedrun | El administrador podrá revisar y validar speedruns enviados por los usuarios según las reglas de cada categoría. Solo los validados impactan el puntaje. |
| Funcional | RF-03 | Subida de speedrun | Los usuarios podrán subir speedruns seleccionando el juego y la categoría. |
| Funcional | RF-04 | Actualización de tablas | La tabla de clasificación se actualizará automáticamente al validarse una nueva speedrun. |
| Funcional | RF-05 | Notificaciones automáticas a usuarios | El sistema notificará automáticamente a los usuarios ante eventos como: validación/rechazo de una speedrun, pérdida de récord, o respuestas en el foro. |
| Funcional | RF-06 | Control de permisos para subida de speedruns | Solo los usuarios autenticados podrán subir speedruns. |
| Funcional | RF-07 | Visualización de perfiles | Cualquier usuario podrá ver perfiles ajenos, incluyendo estadísticas, récords e icono de perfil. |
| Funcional | RF-08 | Publicación en foros | El sistema permitirá publicar y responder mensajes en los foros de cada juego o categoría. |
| Funcional | RF-09 | Registro de usuarios | Los nuevos usuarios podrán crear una cuenta con nombre, correo, usuario y contraseña. |
| Funcional | RF-10 | Inicio de sesión | Los usuarios podrán iniciar sesión usando correo y contraseña. |
| Funcional | RF-11 | Personalización de perfil | Los usuarios podrán cambiar su icono, editar su nombre y biografía, y decidir si mostrar estadísticas o récords. |
| Tipo | ID | Título | Descripción |
|---|---|---|---|
| No funcional | RNF-01 | Plazo máximo de verificación de speedruns | Las speedruns deberán ser verificadas por un administrador en un máximo de 6 días calendario. |
| No funcional | RNF-02 | Soporte de usuarios concurrentes | El sistema debe poder manejar al menos 1000 usuarios conectados simultáneamente sin afectar el rendimiento. |
| No funcional | RNF-03 | Tiempos de respuesta | Las operaciones de navegación deben completarse en menos de 2 segundos en condiciones normales. |
| No funcional | RNF-04 | Interfaz clara para subidas de speedruns | La interfaz para subir speedruns debe ser clara y permitir completar el proceso en no más de 5 pasos. |
Figma - Prototipo de Quicksters
- @ionic/angular: Framework para construir aplicaciones móviles y web con Angular.
- @angular/forms: Módulo para manejar formularios reactivos y plantillas.
- @capacitor/core: Para integrar funcionalidades nativas en aplicaciones móviles.
Objetivos Entrega Final: Funcionalidades avanzadas, optimizar rendimiento y preparar aplicación para su despliegue.
- EF 1: Implementación de funcionalidades completas (CRUD, notificaciones, almacenamiento local) de acuerdo a los requerimientos funcionales y no funcionales definidos.
- EF 2: Mejoras en UI/UX y optimización de rendimiento.
- EF 3: Implementación de seguridad avanzada en API: protección contra inyección SQL/XSS, implementación CORS seguro, y encriptación de datos sensibles con bcrypt.
- EF 4: Optimización de consultas y respuesta eficiente.
- EF 5: Integración con algún servicio externo (AWS o APIs de terceros).
- Entrega:
- Aplicación con CRUD completo, UI/UX optimizado y seguridad web aplicada.
- Backend seguro con validaciones y cifrado de datos.
- Documentación técnica del proyecto.
- Instalar Docker Desktop
- Clonar el repositorio:
git clone https://github.com/ManuelsAguilera/Quicksters.com.git cd Quicksters.com - Iniciar los servicios:
docker-compose up --build
- Acceder a la aplicación:
- Frontend: http://localhost:8100
- API: http://localhost:5000
Los servicios disponibles son:
- Frontend (Ionic/Angular)
- Backend (Flask API)
- Base de datos (MySQL)
-
Node.js (versión 16 o superior)
-
Angular CLI:
npm install -g @angular/cli -
Python 3.10 o superior
-
MySQL
-
Instalar dependencias del frontend:
cd frontend npm install ionic serve -
Instalar dependencias del backend:
cd backends python -m venv env source env/bin/activate # En Windows: env\Scripts\activate pip install -r requirements.txt python src/app.py