Weave Code
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

Multibundle Laravel Package

ashleydawson/multibundle

Group and register multiple dependent Symfony2 bundles as a single logical unit. Extend AbstractMultiBundle to declare required bundles, then call registerInto() in AppKernel to add the bundle and its dependencies in one step.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Modular Monoliths: Enables a "micro-service-like" architecture within a single Laravel application by isolating functionality into discrete bundles (e.g., separate modules for payments, CRM, or analytics). Aligns with the trend of avoiding premature microservices while retaining modularity.
  • Legacy System Integration: Facilitates incremental migration of monolithic PHP/Symfony2 apps to Laravel by wrapping existing bundles as reusable components. Reduces rewrite effort for teams maintaining hybrid stacks.
  • Third-Party Plugin Ecosystem: Allows vendors to distribute Laravel-compatible plugins as standalone bundles (e.g., authentication, reporting) without forcing monolithic dependencies. Expands the package’s utility for SaaS platforms or marketplaces.
  • Feature-Flagged Rollouts: Supports A/B testing or phased feature releases by dynamically enabling/disabling bundles at runtime (e.g., experimental UI components).
  • Build vs. Buy: Justifies buying this lightweight package over custom bundle management when:
    • Teams lack Symfony2/Laravel kernel expertise.
    • The overhead of maintaining a custom solution outweighs the 2-star package’s simplicity.
    • Compatibility with existing Symfony2 bundles is a priority (e.g., legacy enterprise apps).

When to Consider This Package

  • Avoid if:
    • Your app is greenfield Laravel with no Symfony2 dependencies—use Laravel’s native service providers instead (lower learning curve).
    • You need active maintenance or modern PHP 8.x support (last release predates Laravel 5.0).
    • Your modularity needs are simple (e.g., <5 modules)—Laravel’s built-in providers suffice.
    • You’re targeting Lumen (micro-framework) or headless APIs where kernel-level bundles add unnecessary complexity.
  • Look elsewhere if:
    • Requiring Symfony Flex auto-loading or modern Composer best practices (this package predates these standards).
    • Bundles need dynamic configuration at runtime (consider Laravel’s config:cache or package-specific solutions).
    • Your team lacks Symfony2 kernel familiarity (steep learning curve for minimal gain).

How to Pitch It (Stakeholders)

For Executives: "This package lets us treat Laravel like Lego—snapping together pre-built modules (e.g., payment processing, user dashboards) without rewriting them from scratch. For $0 cost and minimal dev effort, we can:

  • Accelerate feature launches by assembling bundles from vendors or internal teams.
  • Reduce technical debt by wrapping legacy Symfony2 code into reusable components.
  • Future-proof our architecture for gradual microservices adoption if needed. Risk is low: it’s MIT-licensed, lightweight, and only adds value if we’re already modularizing."

For Engineering: "If we’re building a modular monolith or integrating Symfony2 bundles, this gives us:

  • Symfony2 kernel compatibility in Laravel (no kernel rewrite needed).
  • Isolated autoloading for bundles without polluting the global namespace.
  • Dynamic enable/disable of features via config (e.g., bundles: [‘Analytics’ => env(‘ENABLE_ANALYTICS’, false)]). Tradeoff: It’s a 7-year-old package, so we’d need to:*
  • Test thoroughly with our PHP version (likely works on 5.6–7.4).
  • Fallback to custom providers if we hit edge cases (e.g., bundle conflicts). Proposal: Pilot with 1–2 non-critical bundles to validate before scaling."
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.
milito/query-filter
apiboxsym/user-bundle
apiboxsym/health-check-bundle
jayeshmepani/jpl-moshier-ephemeris-php
elnasnato/laraliveui
labrodev/rest-sdk
sampaui/sampaui
babelqueue/php-sdk
facebook/capi-param-builder-php
babelqueue/symfony
hamzi/corewatch
minionfactory/raw-hydrator
hexters/coinpayment
rjcodes/rjcms
act-training/laravel-permissions-manager
alimarchal/laravel-chart-of-accounts
babenkoivan/elastic-scout-driver
mkwebdesign/filament-watchdog-v5
renatomarinho/laravel-page-speed
zedmagdy/filament-business-hours