Loading repository data…
Loading repository data…
velizj / repository
Demostración del resultado de un desarrollo de api, para Reto Técnico en el contexto de una postulación de java backend
A transparent discovery signal based on current public GitHub metadata.
This score does not audit code, security, maintainers, documentation quality, or suitability. Verify the repository and its current documentation before adoption.
Este proyecto tiene como objetivo proporcionar una solución para construir una API que permita acortar las URLs oficiales del Meli's Website con fines de mejorar los mensajes en las campañas de marketing, especialmente las dirijidas a las redes sociales. Utiliza una arquitectura escalable y está diseñada para ser fácil de mantener y extender.
A continuación se muestra un diagrama, que muestra una vista general de la arquitectura del proyecto:
En este flujo, un usuario autorizado del equipo de Meli's Marketing, previa selección de las URLs que participarán en la campaña de marketing, utiliza la API para generar la URL corta para cada URL larga que se requiera. Este flujo almacena automáticamente en la caché del servicio, de tal manera que pueda ser utilizado, en seguida. El siguiente diagrama ilustra los pasos involucrados:
Este flujo describe a través de un diagrama de secuencia cómo un usuario final puede utilizar una URL corta generada por el equipo de Meli's Marketing:
Este flujo muestra se recuperan las estadísticas de uso de las URLs cortas generadas por el equipo de Meli's Marketin y usadas por los usuarios finales.
Para instalar y ejecutar este proyecto localmente, sigue los siguientes pasos:
Clonar el repositorio:
git clone git@github.com:velizj/reto.git
cd reto
Construir el proyecto con Gradle:
./gradlew clean build
Construir la imagen de contenedor de la app:
docker build -t demo-app .
Levantar los contenedores con Docker Compose:
docker-compose up --build -d
Levantar solo la demo-app. Si observa no levanta la app, ejecutar este paso asicional:
docker-compose up --build app -d
Una vez que la aplicación esté en ejecución, puedes acceder a la documentación de Swagger en la siguiente URL: http://localhost:8080/swagger-ui.html