bonusone / doctrine-reverse-engineering
Doctrine entity and repository generator that reverse engineers an existing database for Symfony 6/7 projects.
Installs: 4
Dependents: 0
Suggesters: 0
Security: 0
Stars: 20
Watchers: 0
Forks: 0
Type:symfony-bundle
pkg:composer/bonusone/doctrine-reverse-engineering
Requires
- php: ^8.2
- doctrine/dbal: ^3.8
- doctrine/persistence: ^3.2
- symfony/config: ^6.4 || ^7.0
- symfony/console: ^6.4 || ^7.0
- symfony/dependency-injection: ^6.4 || ^7.0
- symfony/filesystem: ^6.4 || ^7.0
- symfony/framework-bundle: ^6.4 || ^7.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.64
- phpstan/phpstan: ^1.11
- phpunit/phpunit: ^11.0
- rector/rector: ^1.0
- symfony/var-dumper: ^6.4 || ^7.0
Suggests
- doctrine/doctrine-bundle: Exposes the ManagerRegistry service inside Symfony applications.
- doctrine/orm: Provides full Doctrine ORM entity and repository support.
This package is auto-updated.
Last update: 2025-11-07 20:01:30 UTC
README
Doctrine entity and repository generator that reverse engineers an existing database for Symfony 6/7 projects.
Requirements
- PHP 8.2 or newer
- Symfony FrameworkBundle 6.4/7.x
- Doctrine DBAL 3.8+
- A valid
DATABASE_URLconnection string
Installation
composer require bonusone/doctrine-reverse-engineering
The bundle registers itself automatically thanks to the symfony.bundle section in composer.json.
Optional Configuration
Override default paths or behaviour by adding config/packages/doctrine_reverse_engineering.yaml in your application:
doctrine_reverse_engineering: entity_path: '%kernel.project_dir%/src/Entity' entity_namespace: 'App\Entity' repository_path: '%kernel.project_dir%/src/Repository' repository_namespace: 'App\Repository' generate_repositories: true overwrite_existing: false
Usage
Generate all tables without overwriting existing files:
php bin/console doctrine:reverse-engineering:generate
Available options:
| Option | Description |
|---|---|
--connection |
Doctrine connection name (defaults to default) |
--entity-path / --entity-namespace |
Target path and base namespace for entities |
--repository-path / --repository-namespace |
Target path and base namespace for repositories |
--repositories=auto/yes/no |
Force repository generation on/off or reuse configuration |
--overwrite / --no-overwrite |
Control whether existing files are replaced |
--table=foo --table=bar |
Limit generation to selected tables |
--dry-run |
Preview the output without writing files |
Shortcut wrapper available via vendor/bin:
vendor/bin/doctrine-reverse-engineering --table=users --overwrite
License
Released under the MIT License (see LICENSE).