MAKAIABootcamp / frontend-cohorte-4

Este es el repositorio donde albergaremos los ejemplos y ejercicios prácticos del curso desarrollo web Front-end Cohorte 4.
https://makaia-my.sharepoint.com/:f:/g/personal/mentoria_bootcamp_makaia_org/EoGWEkT3yWZMqbVKDUICivUBhqVQCAb8w2zkR_tBghBBig?e=m9V46e
0 stars 3 forks source link

Proyecto Final - Sprint 2 - VideoTube #100

Closed AndresParra11 closed 1 year ago

AndresParra11 commented 1 year ago

Proyecto Final - Sprint 2 - VideoTube

URL de repositorio

Descripción del desarrollo:

Se realiza una aplicación llamada "VideoTube". A continuación, se describen las consideraciones técnicas y funcionales. Se usaron los siguientes elementos:

  1. Arreglos y objetos.
  2. Funciones.
  3. Eventos (.addEventListener( )).
  4. Métodos de arreglos.
  5. Objeto Storage (localStorage y/o sessionStorage).
  6. Responsive design (implementando flex box y media query CSS), cumpliendo con el diseño propuesto en el archivo figma vinculado en el siguiente enlace: https://www.figma.com/file/PTBLTEg0KZDUMRmM7RN5lk/Youtube?nodeid=1201%3A525&t=3JsnmdBSW9wZhZF3-0.

Los requerimientos funcionales que cumple son:

  1. Al realizar click sobre una card de cualquier video, dirige al usuario a la página de detalles del elemento.
  2. Funcionalidad de los botones de filtrado por categoría.
  3. Tiene una página con un formulario que permita agregar un nuevo video, junto con las validaciones en JavaScript para convertir todos los inputs requeridos.
  4. En el aplicativo debe mostrar como mínimo 20 cards de video y reproducirlos todos.
  5. Funcionalidad del input de búsqueda por nombre o título del video.

Estructuras de carpetas:

image

Resumen de paso a paso y desarrollo:

  1. Se crea el archivo index.html que cumple con las características que se solicitan para la página principal según lo especificado en el figma. Se le enlaza el script que estará enlazado como módulo.
  2. Se crea una base de datos de videos que serán los que se usarán en la página web, esto se hace en el archivo data.js, será un array de objetos con diferentes propiedades de cada uno de los videos. Será una variable de tipo export para poder importarlas en otros archivos.
  3. Se crea el archivo script.js donde se realiza la actualización del array de videos cuando se añade uno nuevo. Luego con funciones, funcionalidades como loops, escuchador de eventos, y escritura de HTML en forma dinámica con JavaScript se termina de maquetar la página y añadir las funcionalidades a la página principal.
  4. Se crea una página de detalles que será a donde se redirigirá cuando se clickee un video a reproducir y de forma similar al archivo script.js se crea el archivo detail.js que se enlazará al archivo details.html que ayudará con las funcionalidades y maquetación de la página de detalles.
  5. Se crea una página de formulario con su respectivo archivo .js para realizar el proceso de añadir un nuevo video.
  6. El estilizado de todas las páginas se hace de forma paralela conforme se van creando y finalmente se aplica las modificaciones necesarias para realizar el "responsive desing" con medias querys.

Vistas:

Página principal: index

Página principal (Movile): indexMovile

Botones de filtrado: Botones de filtrado

Filtrado por barra de búsqueda: Filtrado por barra de búsqueda:

Página de reproducción de video: details

Página de reproducción de video (Movile): detailsMovile

Formulario para añadir un nuevo video: form

Estadisticas Wakatime:

image image image

Estadisticas