Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Laravel9 Ddd Laravel Package

hibit-dev/laravel9-ddd

Laravel 9 DDD is a starter package for building Domain-Driven Design applications in Laravel. It offers a modular structure that separates domain, application, and infrastructure layers, helping organize repositories, actions, and business logic with clean architecture principles.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Architecture standardization: Use it as a reference/scaffold to standardize Laravel 9 services around domain layers, bounded contexts, and separation of domain/application/infrastructure concerns.
  • Build vs. buy/reuse: Treat it as a low-cost reusable starting point for DDD-style Laravel apps rather than building an internal architecture template from scratch. Because it is MIT-licensed, legal friction is low, but the team must still own long-term maintenance.
  • Roadmap modularity: Supports products expected to grow into multiple business domains—billing, catalog, identity, fulfillment—by encouraging module boundaries before a monolith becomes tightly coupled.
  • Feature delivery risk: The PM can use it to reduce architecture churn and onboarding variance, but should not position it as a product differentiator. It is infrastructure/process leverage, not user-facing capability.
  • Greenfield and internal platforms: Best suited for new Laravel 9 services, internal back-office systems, or modular monoliths where domain complexity justifies explicit layering.
  • Technical debt containment: Can help avoid ad hoc folder structures and “everything in controllers/models” patterns, but only if the team actually follows DDD conventions and reviews boundaries.
  • Adoption decision: The 60-star count and Laravel 9 constraint make this a pilot/reference candidate, not a safe default platform dependency. PM should fund a short spike and require an exit/migration plan.

When to Consider This Package

Consider it when:

  • You are starting a new Laravel 9 application or a bounded service where DDD-style layering is desired from day one.
  • The product has non-trivial domain logic, multiple business capabilities, or a roadmap toward a modular monolith or service extraction.
  • The engineering team has DDD familiarity or is willing to adopt strict conventions for domain, application, and infrastructure boundaries.
  • You want a starting scaffold/reference to align folder structure, dependency direction, and module ownership quickly.
  • The team accepts ownership of the package’s patterns and is prepared to fork or vendor it if upstream activity is limited.
  • MIT licensing and low procurement overhead matter.

Look elsewhere or avoid when:

  • The product is simple CRUD, a prototype, or a short-lived internal tool where DDD layering adds ceremony without enough domain complexity.
  • The platform is on Laravel 10/11+ or has a policy against Laravel 9, which is past mainstream support and creates security/upgrade risk.
  • The team lacks DDD experience and has no appetite for architectural governance; the package will not enforce good boundaries by itself.
  • You need a widely adopted, actively maintained framework package with strong community support, frequent releases, and clear upgrade guarantees.
  • The organization cannot tolerate a low-star, single-maintainer dependency in a critical path. In that case, use it only as inspiration or fork it with explicit ownership.
  • You need product features out of the box; this is an architecture scaffold, not a feature package.

How to Pitch It (Stakeholders)

For executives: This is a low-cost, MIT-licensed Laravel 9 scaffold that can help engineering structure complex products into clearer business modules. It supports faster onboarding and reduces the risk of a tangled monolith as the roadmap expands. However, it has limited community adoption and is tied to Laravel 9, so I recommend a time-boxed pilot rather than broad adoption. Success criteria: measurable reduction in cross-module coupling, faster feature onboarding in a real domain, and a clear upgrade/ownership path.

For engineering: It gives us a DDD-oriented Laravel starting point—domain/application/infrastructure separation and bounded-context conventions—without building a template from scratch. We should use it as a reference or vendored starter, not a black-box dependency. Validate it against our Laravel version policy, test the structure with one real bounded context, and document where we deviate. If the pilot works, assign an internal owner and plan to fork/maintain if upstream activity stays low.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
skyraptor/chatter
edlugz/sasapay
abbasudo/artisan-route
mirvan/ippanel
ignibyte/aic-framework
glavweb/data-schema-bundle
glavweb/datagrid-bundle
tacticmedia/scim-server
uni-method/frame
neika-ai/sdk
adachsoft/php-code-style
pharaonic/laravel-notification-dependencies
beautinow/translug
dev-brainiac/bot-cloaked
octoberrain/html
octoberrain/extension
octoberrain/exception
octoberrain/contracts
adachsoft/api-version-bundle
cgv/localized-resource