youtube-video-keeper

El actual proyecto consiste en una aplicación para guardar links de YouTube.

Alcance el proyecto

Se implementó un layout que sólo es funcional en desktop, no tuvo dentro de su scope un diseño para dispositivos móviles

Demo

Para facilitar la exploración del proyecto se ha dispuesto una versión demo alojada en este link.

Requisitos

Setup del proyecto

Backend

El proyecto backend consiste en una función de AWS Lambda conectada a AWS DynamoDB, la cual se dispone a través de AWS API Gateway. La aplicación se encuentra en la carpeta ‘aws-lambda’, y para facilitar el despliegue se ha dejado un archivo (deploy-backend.yaml) IaC (Infrastructure as Code) de tipo SAM, una herramienta de AWS para extender a Cloudformation y desplegar proyectos serverless como este Para desplegar el backend nos basta con ejecutar la siguiente línea:

sam deploy -t deploy-backend.yaml --stack-name youtube-video-keeper-api --resolve-s3 --capabilities CAPABILITY_IAM

El output de este comando nos entrega la url de API Gateway para poder utilizarla dentro del proyecto.

Frontend

La aplicación frontend consiste en una SPA de Vuejs, la biblioteca de componentes utilizada es Vuetify, y se hace uso de Sass como preprocesador de estilos. Para no acarrear credenciales hacia el repositorio de Git, parte de la lógica hace uso de variables de entorno, por lo que antes de utilizar el proyecto se necesita configurar un archivo .env con la url del backend y la API Key de google para utilizar la API de YouTube. El proyecto dispone de un archivo .env.example con un ejemplo de esto. SAM levanta un backend que permite la consultas cross-domain, por lo que se puede utilizar el proyecto directamente desde el entorno de desarrollo en local.

Desarrollo

yarn serve

Transpilado para producción

yarn build

Test unitarios

yarn test:unit

Lints y corrección de archivos

yarn lint

Vistas implementadas

Home

home

Confirmación de eliminación

home

Descripción del video

home

Reproductor

home

Customización

See Configuration Reference.

GitHub

View Github