saucebase/module-installer
A Laravel Composer installer for Saucebase modules that simplifies registering, installing, and organizing modular packages in your application. It streamlines module discovery and setup so you can add features without manual configuration.
composer require place code into modules/<name> instead of vendor/. Adopting it is effectively a public commitment that features ship as independently installable modules rather than as edits to the core app. It is the plumbing behind a roadmap decision, not a feature itself.type: saucebase-module) plus a deterministic install path is the minimum viable foundation for a module directory, private registry, or partner extension programme. The package does not create the ecosystem, but no ecosystem story is credible without it.composer/installers with a custom path, or (c) ask every consumer to copy folders manually. A PM should treat this as a ~1-day decision with low switching cost, not an architecture debate.modules/" instruction is a support ticket and a point where a self-hosting customer gets the layout wrong. Automating the path is a cheap DX win that shows up in activation and installation-failure metrics rather than in the product itself.Consider adopting when:
require, update, lockfiles) rather than a bespoke update mechanism.Look elsewhere when:
modules/ convention with one module is overhead with no payoff.composer/installers or composer-installers-extender instead of a bespoke plugin per type.allow-plugins restrictions, no plugin execution). The install step will fail or require manual overrides, which negates the benefit.modules/<lowercase-name> convention will fight you.For executives (one paragraph): This is a small, free, MIT-licensed piece of developer plumbing that lets us ship product capabilities as installable modules instead of one growing codebase. It costs effectively nothing to adopt, carries no runtime footprint, and is the prerequisite for any future module ecosystem, partner add-ons, or paid extensions. The risk is not technical — the code is simple and the licence is permissive — it is maturity: the package is early and barely used, so we should treat it as ours to maintain if we depend on it. Recommendation: adopt internally now, keep the ecosystem narrative off the roadmap until at least three real modules exist.
For engineering (one paragraph): It is a Composer plugin (Installer.php + Plugin.php) that maps type: saucebase-module packages to modules/<name> in lowercase, with a configurable base directory. It ships with a PHPUnit 12 suite, Pint formatting, and Conventional Commits, so it is easy to review and safe to fork. Two asks before we depend on it: confirm allow-plugins is permitted in our build and customer environments, and agree whether modules resolve from Packagist or a private registry. Budget a day to vendor or fork it if upstream goes quiet — the surface area is tiny.
How can I help you explore Laravel packages today?