En esta aplicacion he volcado gran parte de mi conocimiento en arquitectura de software. En este caso he utilizado la arquitectura DDD (hexagonal para conocedores) donde nos desintoxicamos del núcleo de Laravel que trae por defecto para hacerlo más escalable al momento de agregar mas microservicios y/o funcionalidades dentro de la misma aplicación sin necesidad de realizar una conexion proxy con otra microservicio. Se han utilizado muchas tecnicas de codigo limpio que se describen en el famoso libro Clean Code por lo que hace que la aplicación tenga mucha escala a futuro y la implementacion de 1 o más servicios sea muy sencilla.
- Requisitos
- PHP 8.0 o +Web oficial
- Composer 2.2 o +Web oficial
- MySQL Web oficial
- Node 16 o + Web oficial
-
Ejecute el siguiente comando en la raiz de su proyecto
$ cp .env.example .env
-
Verifique que las credenciales de tu base de datos local (MySQL) coincidan con las variables de entorno en .env
DB_HOST= DB_PORT= DB_DATABASE= DB_USERNAME= DB_PASSWORD=
-
Copie y pegue el siguiente comando ejecutable en la raiz del proyecto.
$ composer install && npm install
-
Corra las migraciones en tu base de datos y los seeders
$ php artisan migrate
$ php artisan db:seed
-
Para levantar cada microservicio de manera local ejecute en 2 terminales distintas en la raíz del proyecto
$ php artisan serve
$ npm run dev
-
Ya puedes ver la aplicación corriendo en tu sistema