gibass/domain-maker-bundle
最新稳定版本:1.0.1
Composer 安装命令:
composer require gibass/domain-maker-bundle
包简介
Generating classes for clean architecture Project in symfony
README 文档
README
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:
|-- src // source folder
| `-- Blog // A specific domain
| |-- Domain
| | |-- Gateway
| | | |-- PostGatewayInterface.php
| | |-- Model
| | | |-- Entity
| | | | |-- Post.php
| | |-- UseCase
| | | |-- CreatePost.php
| |-- Infrastructure
| | |-- Adapter
| | | |-- Repository
| | | |-- PostRepository.php
| |-- UserInterface
| | |-- Controller
| | | |-- PostController.php
| | |-- Presenter
| | | |-- Html
| | | | |-- PostPresenterHTML.php
| | | |-- Json
| | | | |-- PostPresenterJSON.php
Installation
- Installing the bundle with composer :
composer require --dev gibass/domain-maker-bundle
- Add this line in
config/bundles.php:
<?php return [ // ... Gibass\DomainMakerBundle\DomainMakerBundle::class => ['dev' => true, 'test' => true], ];
Configuration
Default configuration:
domain_maker: parameters: root_namespace: App # Your project root namespace dir: src: '%kernel.project_dir%/src/' # The source folder config: '%kernel.project_dir%/config/' # The symfony config folder
You can override the default configuration with your own values.
Create a file domain_maker.yaml under config/packages
Example :
domain_maker: parameters: root_namespace: MyProject # Set Root Namespace
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.
gibass/domain-maker-bundle 适用场景与选型建议
gibass/domain-maker-bundle 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 8 次下载、GitHub Stars 达 0, 最近一次更新时间为 2026 年 02 月 13 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 gibass/domain-maker-bundle 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 gibass/domain-maker-bundle 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 8
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 22
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2026-02-13