Skip to content

Latest commit

 

History

History
80 lines (64 loc) · 3.1 KB

README.md

File metadata and controls

80 lines (64 loc) · 3.1 KB

Laravel API Test

Proyecto de prueba para Prex.

Descripción

Este proyecto se integra con la API de Giphy funcionando como intermediario y exponiendo al usuario una API personalizada.

Se utilizan diferentes conceptos y patrones de codigo para demostrar conocimientos.

Tecnologías

Warning

Laravel Sanctum brinda autenticacion token de demostracion, no es remplazo de OAuth.

Conceptos utilizados

  • Comando de consola para generar ambiente local de desarrollo.
  • Eloquent ORM para interactuar con la base de datos.
  • Controller para agrupar logica de manejo utilizando MVC.
  • Middleware para interceptar y persistir toda peticion y respuesta.
  • Form Request para encapsular logica de validacion.
  • Versionamiento de API para facilitar manutención y flexibilidad.
  • Listener y Subscriber para detectar y reaccionar a eventos del cliente HTTP.
  • Servicio con su propio Service Provider y para encapsular interaccion Giphy.
  • Enum para representar tipos de token.
  • Tests para prevenir y descubrir errores.

Diagramas

Caso de Uso Secuencia

Requisitos

  • Git
  • Docker
  • MySQL
  • PHP v8.2 en adelante

Instalación

  1. Clonar el repositorio
    git clone https://github.com/jonagoldman/laravel-api.git
  2. Navegar dentro de la nueva carpeta
    cd laravel-api
  3. Requerir dependencias
    composer update
  4. Crear archivo .env local
    cp .env.example .env
  5. Correr contenedor desprendido
    ./vendor/bin/sail up -d
  6. Ejecutar comando de inicializacion
    ./vendor/bin/sail artisan setup:dev

Postman

La Colección POSTMAN proporciona los servicios y su descripcion. El manejo de tokens de autenticacion es automatizado.

Colleccion POSTMAN

Run In Postman

Tests

Ejecutar tests utilizando el comando

./vendor/bin/sail artisan test