Los requerimientos se pueden leer en el PDF que me enviaron.
Visita /posts para ver la lista de posts.
El proyecto se ha desarrollado con Laravel 10 y PHP 8.2, usando Composer. La base de datos es MySQL 8.0.
Los tests se han desarrollado con PHPUnit y Pest.
El frontend y assets se procesan con Vite.
Los git commits se han hecho usando Conventional Commits.
Como librerias externas se han usado:
- TailwindCSS
- Laravel Pint (custom PHP CS Fixer)
Para usar pint:
./vendor/bin/sail php ./vendor/bin/pint
Se ofrece documentation de la API con la specification OpenAPI usando el
comando ./vendor/bin/sail artisan l5-swagger:generate
.
Para ver la documentación, se puede acceder a /api/documentation.
La libreria que se usa para generar la documentación de la API es bastante escasa en información, por lo que la implementación no es muy buena.
Se ha usado Pest sobre PHPUnit para los tests, ya que facilita la escritura de tests y experiencia de desarrollo.
- Clonar el repositorio
- Instalar las dependencias - Usar estas instrucciones
- Crear un fichero
.env
a partir del.env.example
- Usar Laravel Sail para levantar el proyecto -
./vendor/bin/sail up
- Ejecutar los tests -
./vendor/bin/sail artisan test