From 671619f2eddb7af9d037cbd5028ab411a66df652 Mon Sep 17 00:00:00 2001 From: omarsalinas3 Date: Mon, 1 Jun 2026 19:19:28 -0600 Subject: [PATCH 1/3] docs: improve project documentation --- README.md | 68 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) diff --git a/README.md b/README.md index 1b9f5f3..03ae26e 100644 --- a/README.md +++ b/README.md @@ -134,3 +134,71 @@ You have made it till the end. Kudos to you!!
+ + +# Student Contribution + +## Developer Information + +- Name: Omar Salinas +- University: UNIVERSIDAD TECNOLOGICA DEL NORTE DE GUANAJUATO +- Date: 01/06/2026 + +## Proposed Improvements + +1. +2. +3. + +## Observations + +Lorem ipsum... + +## Project Strengths + +1. **Amigable para principiantes:** Es un proyecto excelente para personas que inician en Open Source. +2. **Colaborativo:** Permite agrupar múltiples proyectos web en un solo lugar. +3. **Instrucciones claras:** Cuenta con una guía detallada de contribución (`CONTRIBUTING.md`). +4. **Organizado:** Fomenta un buen flujo de trabajo al requerir la asignación de *issues* antes de un Pull Request. +5. **Fácil configuración:** El proceso de *fork* y clonación es muy sencillo de seguir localmente. + +## Improvement Opportunities + +1. **Agregar pruebas automatizadas:** Implementar GitHub Actions para validar el código de las contribuciones. +2. **Plantillas de Issues:** Crear *templates* específicos para reportar bugs o proponer mejoras. +3. **Soporte Multilingüe:** Traducir el `README.md` a español u otros idiomas para atraer más desarrolladores. +4. **Demo en vivo:** Alojar la página principal (por ejemplo en Vercel o GitHub Pages) para ver los proyectos. +5. **Estandarización de código:** Requerir el uso de herramientas como Prettier para mantener el código uniforme. + +## Technologies Used + +| Tecnología | Propósito | +|------------|---------| +| HTML5 | Estructura de los proyectos web | +| CSS3 | Estilos y diseño visual | +| JavaScript | Interactividad de los proyectos | +| Git | Control de versiones | +| GitHub | Alojamiento y colaboración de código | + +## Architecture Diagram + +```mermaid +graph LR +A[Desarrollador] -->|Hace Fork| B[Repositorio Personal] +B -->|Clona| C[Entorno Local] +C -->|Push a Rama Dev| B +B -->|Pull Request| D[WebArena Principal] +``` + +## Functional Requirements + +- **RF-01** El repositorio deberá permitir visualizar la lista de proyectos web contribuidos. +- **RF-02** El sistema deberá requerir que los usuarios tengan un *issue* asignado antes de contribuir. +- **RF-03** El sistema deberá permitir a los desarrolladores agregar nuevas carpetas de proyectos. +- **RF-04** El sistema deberá requerir que cada carpeta nueva contenga su propio archivo `README.md`. +- **RF-05** El sistema deberá aislar el proyecto de cada usuario en su propio directorio. +- **RF-06** El repositorio deberá proveer una guía de contribución accesible para todos. +- **RF-07** El sistema no deberá permitir commits directos a la rama principal (main). +- **RF-08** El sistema deberá soportar proyectos desarrollados con tecnologías web estándar (HTML/CSS/JS). +- **RF-09** El sistema deberá mostrar badges actualizados del estado del proyecto. +- **RF-10** El sistema deberá mantener una lista actualizada de los mantenedores del repositorio. \ No newline at end of file From 167cf9dec58b00742ebdc170b1e8875813433fb8 Mon Sep 17 00:00:00 2001 From: omarsalinas3 Date: Mon, 1 Jun 2026 19:29:55 -0600 Subject: [PATCH 2/3] docs: improve project documentation --- README.md | 78 +++++++++++++++++++++++++++++-------------------------- 1 file changed, 41 insertions(+), 37 deletions(-) diff --git a/README.md b/README.md index 03ae26e..e8b9f36 100644 --- a/README.md +++ b/README.md @@ -146,59 +146,63 @@ You have made it till the end. Kudos to you!! ## Proposed Improvements -1. -2. -3. +1. Diseñar e implementar las vistas de navegación explícitas para la plataforma SmartTV, las cuales quedaron documentadas pero pendientes de diagramar. +2. Ampliar las características del chat interactivo durante la transmisión en vivo para mejorar la interacción de la comunidad. +3. Integrar un sistema de alertas personalizadas para que el usuario elija qué eventos disparan notificaciones en su reloj inteligente. ## Observations -Lorem ipsum... +El proyecto FestivalTrack cuenta con un diseño de sistema robusto y bien estructurado. Se destaca la clara coherencia entre el modelo de dominio y la navegación, donde cada pantalla responde de manera directa a los atributos y métodos de entidades clave como Evento, Boleto y Transmision. ## Project Strengths -1. **Amigable para principiantes:** Es un proyecto excelente para personas que inician en Open Source. -2. **Colaborativo:** Permite agrupar múltiples proyectos web en un solo lugar. -3. **Instrucciones claras:** Cuenta con una guía detallada de contribución (`CONTRIBUTING.md`). -4. **Organizado:** Fomenta un buen flujo de trabajo al requerir la asignación de *issues* antes de un Pull Request. -5. **Fácil configuración:** El proceso de *fork* y clonación es muy sencillo de seguir localmente. +1. **Arquitectura Multiplataforma:** El diseño del sistema abarca entornos web, aplicaciones móviles y dispositivos wearables para acompañar al usuario antes y durante el evento. +2. **Separación de Roles:** Implementa flujos de navegación completamente independientes para los roles de Usuario y Administrador, evitando exponer funciones de gestión al consumidor. +3. **Gestión Integral:** El sistema unifica exitosamente la exploración cultural (galerías, canciones, biografías) con los procesos transaccionales como la compra de boletos. +4. **Interactividad en Vivo:** Soporta transmisiones de eventos digitales (streaming) en tiempo real, acompañadas de un chat interactivo. +5. **Notificaciones Contextuales:** Aprovecha el uso de relojes inteligentes para enviar alertas inminentes e indicaciones de navegación mediante mapas interactivos cuando un acto está por comenzar. ## Improvement Opportunities -1. **Agregar pruebas automatizadas:** Implementar GitHub Actions para validar el código de las contribuciones. -2. **Plantillas de Issues:** Crear *templates* específicos para reportar bugs o proponer mejoras. -3. **Soporte Multilingüe:** Traducir el `README.md` a español u otros idiomas para atraer más desarrolladores. -4. **Demo en vivo:** Alojar la página principal (por ejemplo en Vercel o GitHub Pages) para ver los proyectos. -5. **Estandarización de código:** Requerir el uso de herramientas como Prettier para mantener el código uniforme. +1. **Desarrollo de Vistas SmartTV:** Crear los diagramas de interfaz para la entidad SmartTV, ya que sus métodos para reproducir streaming y mostrar galería aún no tienen una representación visual[cite: 1]. +2. **Recuperación de Transacciones:** Implementar un guardado temporal durante el proceso de compra de boletos y generación del Pago para evitar pérdidas si el usuario interrumpe el flujo[cite: 1]. +3. **Soporte Multilingüe:** Permitir la traducción de la información biográfica y el catálogo cultural para atraer a visitantes de distintos países[cite: 1]. +4. **Optimización de Servidores de Streaming:** Asegurar que la entidad Transmision escale eficientemente ante un alto volumen de espectadores en vivo[cite: 1]. +5. **Métricas Avanzadas:** Expandir el panel administrativo para ofrecer analíticas más profundas más allá de la vista general de vistas y porcentajes de ventas de boletos[cite: 1]. ## Technologies Used -| Tecnología | Propósito | -|------------|---------| -| HTML5 | Estructura de los proyectos web | -| CSS3 | Estilos y diseño visual | -| JavaScript | Interactividad de los proyectos | -| Git | Control de versiones | -| GitHub | Alojamiento y colaboración de código | +| Tecnología/Entidad | Propósito | +|--------------------|-----------| +| Aplicación Web | Punto de entrada único para descubrimiento cultural y compra de boletos[cite: 1] | +| App Móvil (Roles) | Plataforma para el usuario final y panel de gestión para el administrador[cite: 1] | +| Smartwatch | Dispositivo wearable para alertas contextuales y rutas de mapas[cite: 1] | +| Módulo Transaccional | Procesamiento de pagos, selección de asientos VIP/General y generación de código QR[cite: 1] | +| Sistema de Streaming | Gestión de emisiones en vivo de los conciertos con chat incorporado[cite: 1] | ## Architecture Diagram ```mermaid -graph LR -A[Desarrollador] -->|Hace Fork| B[Repositorio Personal] -B -->|Clona| C[Entorno Local] -C -->|Push a Rama Dev| B -B -->|Pull Request| D[WebArena Principal] -``` +graph TD + A[Usuario] -->|Consulta / Compra| B[App Web / Móvil] + C[Administrador] -->|Gestiona Contenido| D[App Móvil Admin] + D -->|Crea| E[Evento / Catálogo] + B -->|Requiere| E + B -->|Genera| F[Boleto / Pago] + E -->|Transmite| G[Streaming en Vivo] + E -->|Dispara Alerta| H[Dispositivo Wearable] + ## Functional Requirements -- **RF-01** El repositorio deberá permitir visualizar la lista de proyectos web contribuidos. -- **RF-02** El sistema deberá requerir que los usuarios tengan un *issue* asignado antes de contribuir. -- **RF-03** El sistema deberá permitir a los desarrolladores agregar nuevas carpetas de proyectos. -- **RF-04** El sistema deberá requerir que cada carpeta nueva contenga su propio archivo `README.md`. -- **RF-05** El sistema deberá aislar el proyecto de cada usuario en su propio directorio. -- **RF-06** El repositorio deberá proveer una guía de contribución accesible para todos. -- **RF-07** El sistema no deberá permitir commits directos a la rama principal (main). -- **RF-08** El sistema deberá soportar proyectos desarrollados con tecnologías web estándar (HTML/CSS/JS). -- **RF-09** El sistema deberá mostrar badges actualizados del estado del proyecto. -- **RF-10** El sistema deberá mantener una lista actualizada de los mantenedores del repositorio. \ No newline at end of file +- **RF-01** El sistema deberá permitir al Administrador subir canciones (MP3, WAV) e imágenes al catálogo cultural[cite: 1]. + +- **RF-02** El sistema deberá permitir la publicación de eventos con detalles como ubicación, capacidad y fecha[cite: 1]. +- **RF-03** El sistema deberá incluir un flujo transaccional que genere un Boleto tras la validación de un Pago[cite: 1]. +- **RF-04** El sistema deberá generar un código QR único para cada boleto adquirido[cite: 1]. +- **RF-05** El sistema deberá soportar la transmisión en vivo de los eventos e integrar un chat activo para los espectadores[cite: 1]. +- **RF-06** El sistema deberá enviar notificaciones a los dispositivos wearables cuando un acto programado esté por comenzar[cite: 1]. +- **RF-07** El sistema deberá trazar y mostrar en un mapa interactivo la ruta de acceso al recinto desde la ubicación del usuario[cite: 1]. +- **RF-08** El sistema deberá permitir a los usuarios explorar galerías históricas y leer las biografías de los artistas[cite: 1]. +- **RF-09** El sistema deberá bifurcar la navegación inicial basándose en el rol autenticado (Usuario o Administrador)[cite: 1]. +- **RF-10** El sistema deberá proveer al Administrador un dashboard con estadísticas de contenido y resumen de ventas[cite: 1]. \ No newline at end of file From 433ab08e3a91b111175b2e70cf4021392d73b5b1 Mon Sep 17 00:00:00 2001 From: omarsalinas3 <148148478+omarsalinas3@users.noreply.github.com> Date: Mon, 1 Jun 2026 19:50:21 -0600 Subject: [PATCH 3/3] Enhance README with contribution and project details Added sections for student contribution, project strengths, improvement opportunities, and functional requirements. Updated README to enhance clarity and usability for new developers. --- README.md | 487 +++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 486 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index e8b9f36..8134e86 100644 --- a/README.md +++ b/README.md @@ -205,4 +205,489 @@ graph TD - **RF-07** El sistema deberá trazar y mostrar en un mapa interactivo la ruta de acceso al recinto desde la ubicación del usuario[cite: 1]. - **RF-08** El sistema deberá permitir a los usuarios explorar galerías históricas y leer las biografías de los artistas[cite: 1]. - **RF-09** El sistema deberá bifurcar la navegación inicial basándose en el rol autenticado (Usuario o Administrador)[cite: 1]. -- **RF-10** El sistema deberá proveer al Administrador un dashboard con estadísticas de contenido y resumen de ventas[cite: 1]. \ No newline at end of file +- **RF-10** El sistema deberá proveer al Administrador un dashboard con estadísticas de contenido y resumen de ventas[cite: 1]. + + +# 🚀 Práctica 03: Contribución a un Proyecto Open Source mediante Fork y Pull Request + +## 🎯 Objetivo + +Aplicar un flujo de trabajo profesional utilizando Git y GitHub mediante la creación de un Fork de un repositorio Open Source, la clonación del repositorio personal, la creación de una rama de desarrollo, la modificación de documentación técnica y la generación de un Pull Request. + +--- + +# 📚 Competencias a desarrollar + +Al finalizar la práctica el estudiante será capaz de: + +* Realizar Forks de proyectos Open Source. +* Clonar repositorios remotos. +* Crear y administrar ramas. +* Modificar documentación en Markdown. +* Registrar cambios mediante commits. +* Sincronizar repositorios locales y remotos. +* Crear Pull Requests. +* Aplicar flujos de colaboración profesional. + +--- + +# 🌐 Repositorios sugeridos + +Seleccione uno de los siguientes proyectos: + +| Proyecto | URL | +| ------------------- | ----------------------------------------------- | +| Next.js | https://github.com/vercel/next.js | +| Gatsby | https://github.com/gatsbyjs/gatsby | +| Refine | https://github.com/refinedev/refine | +| WebArena | https://github.com/Anadee11/WebArena | +| Simple WebApp Flask | https://github.com/mmumshad/simple-webapp-flask | + +--- + +# 🏢 Escenario + +Has sido invitado a colaborar en un proyecto Open Source. + +El equipo de desarrollo solicita mejorar la documentación para facilitar la incorporación de nuevos desarrolladores. + +Las modificaciones se realizarán exclusivamente sobre el archivo: + +```text +README.md +``` + +--- + +# 🔀 Parte 1. Realizar Fork + +1. Ingresar al repositorio seleccionado. +2. Presionar el botón: + +```text +Fork +``` + +3. Crear una copia en su cuenta personal de GitHub. + +Resultado esperado: + +```text +Repositorio Original + ↓ + Fork + ↓ +Repositorio Personal +``` + +Ejemplo: + +```text +vercel/next.js + ↓ +usuario/next.js +``` + +--- + +# 📥 Parte 2. Clonar el Fork + +Clonar el repositorio que se encuentra en su cuenta personal. + +```bash +git clone https://github.com/USUARIO/REPOSITORIO.git +``` + +Ejemplo: + +```bash +git clone https://github.com/jose/next.js.git +``` + +Ingresar al proyecto: + +```bash +cd REPOSITORIO +``` + +Verificar: + +```bash +git status +``` + +--- + +# 🌿 Parte 3. Crear rama de desarrollo + +Crear una rama llamada: + +```text +dev +``` + +```bash +git checkout -b dev +``` + +Verificar: + +```bash +git branch +``` + +Resultado esperado: + +```text +* dev + main +``` + +--- + +# 🔗 Parte 4. Configurar repositorio original (upstream) + +Agregar referencia al proyecto original. + +```bash +git remote add upstream URL_REPOSITORIO_ORIGINAL +``` + +Ejemplo: + +```bash +git remote add upstream https://github.com/vercel/next.js.git +``` + +Verificar: + +```bash +git remote -v +``` + +Resultado esperado: + +```text +origin https://github.com/usuario/next.js.git +upstream https://github.com/vercel/next.js.git +``` + +--- + +# 📝 Parte 5. Modificar README.md + +Agregar la siguiente sección: + +```markdown +# Student Contribution + +## Developer Information + +- Name: +- University: +- Date: + +## Proposed Improvements + +1. +2. +3. + +## Observations + +Lorem ipsum... +``` + +--- + +# 🎯 Parte 6. Actividades obligatorias + +*Estas son sobre el Proyecto a realizar en equipo* + +## 🏆 Actividad A. Fortalezas del proyecto + +Agregar: + +```markdown +## Project Strengths +``` + +Describir al menos 5 fortalezas. + +--- + +## 🔧 Actividad B. Oportunidades de mejora + +Agregar: + +```markdown +## Improvement Opportunities +``` + +Describir al menos 5 oportunidades de mejora. + +--- + +## 📊 Actividad C. Tabla Markdown + +Agregar una tabla de tecnologías utilizadas. + +--- + +## 🗺️ Actividad D. Diagrama Mermaid + +Agregar un diagrama de arquitectura. + +Ejemplo: + +````markdown +```mermaid +graph LR +A[Cliente] --> B[Aplicación Web] +B --> C[Base de Datos] +``` +```` + +--- + +## 📋 Actividad E. Requerimientos funcionales + +Definir al menos 10 requerimientos funcionales. + +Ejemplo: + +```text +RF-01 El sistema deberá permitir el registro de usuarios. +RF-02 El sistema deberá permitir la autenticación de usuarios. +``` + +--- + +# 💾 Parte 7. Registrar cambios + +Agregar cambios: + +```bash +git add README.md +``` + +Crear commit: + +```bash +git commit -m "docs: improve project documentation" +``` + +Verificar: + +```bash +git log --oneline +``` + +--- + +# ☁️ Parte 8. Publicar cambios + +Enviar la rama al Fork personal. + +```bash +git push origin dev +``` + +--- + +# 🔄 Parte 9. Sincronizar con proyecto original + +Actualizar desde el repositorio principal. + +```bash +git checkout main + +git fetch upstream + +git merge upstream/main +``` + +Regresar a la rama de trabajo: + +```bash +git checkout dev +``` + +--- + +# 🔀 Parte 10. Crear Pull Request + +Ingresar a GitHub. + +Seleccionar: + +```text +Compare & Pull Request +``` + +Configuración: + +```text +Base Repository: +Repositorio Original + +Base Branch: +main + +Head Repository: +Fork Personal + +Compare Branch: +dev +``` + +Título: + +```text +Improve README documentation +``` + +Descripción: + +```markdown +## Changes + +- Added contributor information +- Added strengths analysis +- Added improvement opportunities +- Added Mermaid diagram +- Added functional requirements + +## Evidence + +README updated successfully. +``` + +Enviar Pull Request. + +--- + +# 📸 Evidencias + +***Las evidencias se debaran incluir en tu repositorio propio, una vez terminado cargar el URL resultante en Classroom.*** + +## Evidencia 1 + +Captura del Fork creado. + +Captura de pantalla 2026-06-01 184640 + +--- + +## Evidencia 2 + +Resultado de: + +```bash +git remote -v +``` +Captura de pantalla 2026-06-01 185930 + +--- + +## Evidencia 3 + +Resultado de: + +```bash +git branch +``` +Captura de pantalla 2026-06-01 185745 + +--- + +## Evidencia 4 + +Resultado de: + +```bash +git log --oneline +``` +Captura de pantalla 2026-06-01 193017 + +--- + +## Evidencia 5 + +Captura del Pull Request. +Captura de pantalla 2026-06-01 193707 + +--- + +## Evidencia 6 + +URL del Pull Request. +https://github.com/Anadee11/WebArena/pull/51#issue-4567625764 +--- + +# 🏅 Reto adicional + +Crear una segunda rama: + +```bash +git checkout -b feature/profile +``` + +Agregar una nueva sección: + +```markdown +## Team Members +``` + +Realizar: + +```bash +git add . +git commit -m "feat: add team members section" +git push origin feature/profile +``` + +Generar Pull Request: + +```text +feature/profile → dev +``` +Captura de pantalla 2026-06-01 194237 + +--- + +# 📖 Comandos utilizados + +```bash +git clone +git remote +git remote add +git fetch +git branch +git checkout +git status +git add +git commit +git push +git merge +git log +``` + +--- + +# 📊 Criterios de evaluación + +| Criterio | Valor | +| ------------------------- | ----: | +| Fork del repositorio | 15% | +| Configuración de upstream | 10% | +| Uso de rama dev | 15% | +| Modificaciones al README | 30% | +| Pull Request | 20% | +| Evidencias | 10% | + +## 🎯 Calificación Total + +**100 puntos** + +