Download the PHP package gibass/domain-maker-bundle without Composer
On this page you can find all versions of the php package gibass/domain-maker-bundle. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download gibass/domain-maker-bundle
More information about gibass/domain-maker-bundle
Files in gibass/domain-maker-bundle
Package domain-maker-bundle
Short Description Generating classes for clean architecture Project in symfony
License MIT
Informations about the package domain-maker-bundle
Domain Maker Bundle
gibass/domain-maker-bundle is a Symfony bundle that adds custom Maker commands to scaffold a Clean Architecture structure by domain.
The bundle generates classes and places them under your configured src directory.
Features
- Create domain-oriented classes with interactive commands.
- Support create-or-choose workflows for existing classes.
- Handle dependencies between generated elements (for example
Repository<->Entity<->Gateway). - Auto-update route config when generating controllers (
config/routes.yaml).
Requirements
- PHP
>=8.2 symfony/maker-bundle^1.61gibass/domain-core^0.1
Folder Structure
For example, we need to create a Blog domain; this bundle can generate a folder structure like:
Installation
-
Installing the bundle with composer :
- Add this line in
config/bundles.php:
Configuration
Default configuration:
You can override the default configuration with your own values.
Create a file domain_maker.yaml under config/packages
Example :
Available Commands
php bin/console maker:use-casephp bin/console maker:entityphp bin/console maker:gatewayphp bin/console maker:repositoryphp bin/console maker:presenterphp bin/console maker:controller
Interactive Flow
Each maker command first asks for the domain:
- Create a new domain, or
- Choose an existing one.
Depending on command type, it may also ask to:
- create a new dependency,
- choose an existing dependency,
- or skip optional dependencies.
Example:
maker:repositorycan auto-create/selectGatewayand select/createEntity.maker:controllercan optionally include aUseCaseand/or aPresenter.
Notes
- Existing files are not overwritten: generation throws an error if target file already exists.
- Controller generation also writes route resource config into
config/routes.yaml.