bornfight/maboo-maker-bundle
Symfony bundle that generates boilerplate for layered architectures. Provides interactive scaffolding plus makers for modules, Doctrine entities/domain models, write models, mappers, repositories, validators, managers, resolvers, mutations, fixtures, and GraphQL schema/types.
symfony/maker-bundle, doctrine/orm, webonyx/graphql-php). Assess whether your project already uses these or if this introduces bloat.src/, so runtime impact is minimal.| Risk Area | Assessment | Mitigation Strategy |
|---|---|---|
| PHP Version Lock | Requires PHP 8.0+ (property promotion, strict types). Laravel 8.x (PHP 7.4) projects cannot use this without upgrading. | Phase PHP upgrade in parallel with adoption; use feature flags to isolate generated code. |
| Doctrine Dependency | Tight coupling with Doctrine ORM. Projects using Eloquent or other ORMs may need adapters or manual overrides. | Evaluate Doctrine adoption as a prerequisite; document workarounds for Eloquent users. |
| GraphQL Lock-in | Assumes GraphQL is the API layer. REST or other API styles require manual overrides. | Abstract GraphQL generation behind interfaces; support REST via separate templates. |
| Template Rigidity | Generated code follows fixed templates. Customizing logic (e.g., adding business rules) requires manual edits post-generation. | Extend templates via make:maboo-* hooks or create a wrapper layer for custom logic. |
| Migration Complexity | Generating migrations for existing entities is unsupported. Refactoring legacy code could be painful. | Use the bundle only for new features; manually scaffold legacy entities. |
| Testing Overhead | Generated code lacks built-in test templates. Teams must manually write unit/integration tests for new components. | Integrate with Pest/PHPUnit via custom commands or templates. |
| Long-Term Maintenance | Small community (4 stars, 0 dependents). Risk of stagnation or breaking changes. | Fork and maintain if critical; contribute to upstream to influence roadmap. |
PHP Version:
Architecture Strategy:
Tooling Dependencies:
Legacy Code:
Developer Experience:
Maintenance:
Testing:
| Component | Fit Level | Notes |
|---|---|---|
| Laravel 9+ | ✅ Excellent | PHP 8.0+ support aligns with Laravel 9/10. Works with Laravel’s service container and routing. |
| Symfony 5.4+ | ✅ Excellent | Designed for Symfony’s MakerBundle patterns; integrates with Symfony’s bundles (e.g., Doctrine, GraphQL). |
| Doctrine ORM | ✅ Excellent | Core dependency for entities, repositories, and fixtures. No Eloquent support. |
| GraphQL (Webonyx) | ✅ Excellent | Automates schema generation for mutations, queries, and types. Assumes GraphQL is the primary API layer. |
| PHP 8.0+ | ❌ Blocking | Property promotion and strict types are required. PHP 7.x projects cannot use this without upgrading. |
| Eloquent ORM | ⚠️ Partial | No native support; would require custom templates or adapters. |
| REST APIs | ⚠️ Partial | GraphQL-first design means REST APIs would need manual overrides (e.g., controllers, DTOs). |
| Custom Value Objects | ❌ Not Supported | Only scalar fields (string, int, bool, float) are supported. Complex types require manual implementation. |
| Event Sourcing | ❌ Not Supported | No support for event stores, projections, or CQRS patterns. |
Phase 1: Assessment & Setup (2–4 weeks)
php -r "echo PHP_VERSION_ID >= 80000 ? 'OK' : 'Upgrade needed';").Booking) to test the bundle.Phase 2: Pilot Implementation (4–6 weeks)
make:maboo-scaffold for new entities (e.g., Hotel, Room).Phase 3: Gradual Adoption (Ongoing)
**Phase 4: Full Migration (6–
How can I help you explore Laravel packages today?