parchex / basics
PHP basics structures for development with DDD and Clean (Hexagonal) Architecture concepts
Requires
- php: ^7.3
- ext-bcmath: *
- ext-json: *
- ext-mbstring: *
- bramus/monolog-colored-line-formatter: ^3.0
- brick/math: ^0.8
- fzaninotto/faker: ^1.9
- league/event: ^2.1
- league/tactician: ^1.0
- mnapoli/silly: ^1.7
- monolog/monolog: ^2.0
- parchex/common: ^0.1
- psr/http-message: ^1.0
- ramsey/uuid: ^4.0
Requires (Dev)
- bamarni/composer-bin-plugin: ^1.4
- kahlan/extra-matcher: ^1.0
- kahlan/kahlan: ^5.1
- phpunit/phpunit: ^9
- roave/security-advisories: dev-master
README
Componentes básicos para el desarrollo de aplicaciones diseñadas con "DDD" y "Hexagonal Architecture"
Requisitos
Instalar Docker para poder ejecutar la versión concreta para el proyecto de PHP...
https://docs.docker.com/engine/installation/
Instalación
Instalacíón e inicialización del proyecto
make install
Con esto tendríamos desplegado el proyecto con las dependencias y herramientas necesarias para su ejecución...
- Utilidades necesarias para desarrollo y pruebas en el directorio
bin
...- composer
- testing tools (kahlan)
- Instalación de dependencias (con composer)
[!] Para generar la configuración para un entorno de desarrollo mejor con make install-dev
[!] Sí quisiéramos borrar la instalación generada podemos recurrir ejecutando make uninstall
Instalación con Docker
make install-docker-dev
Instala el proyecto generando la imagen necesaria de PHP con Docker donde se ejecutaran todos los procesos PHP, en concreto todos los tests desarrollados que prueban el proyecto.
Ejecución
Están disponibles diferentes targets en make que simplifican las tareas comunes y uso de las principales herramientas de desarrollo y pruebas...
make help
A través del fichero de aliases.sh
podemos disponer de varios comandos de para ejecutar PHP
usando la virtualización con Docker para usar la versión concreta del proyecto...
source aliases.sh
- php-cli: Podemos ejecutar cualquier script PHP con la versión PHP del proyecto.
php-cli bin/kahlan php-cli bin/composer
- composer: lanza composer usando la version de PHP del contenedor de la aplicaión
composer update composer show
Testing
Para poder ejecutar el set de pruebas generadas tenemos...
make spec
make spec-verbose
make spec-coverage
O a través del alias en el fichero alieases.sh
...
kahlan
Construido con 🛠️
Versionado 📌
Usamos SemVer para el versionado. Para todas las versiones disponibles, mira los tags en el repositorio.
Licencia 📄
Este proyecto está bajo la Licencia (WTFPL) - mira el archivo LICENSE.md para detalles
⌨️ con ❤️ por Oxkhar 😊