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
Multitenant Plugin

Multitenant Plugin Laravel Package

muhammad-nawlo/multitenant-plugin

A Laravel package for adding multi-tenancy to your application, with tenant-aware database connections, middleware, and automatic model scoping to keep each tenant's data isolated. Simplifies building SaaS apps where one codebase serves multiple customers.

View on GitHub
Deep Wiki
Context7

Multitenant Plugin

A Laravel package for adding multi-tenancy to your application with minimal configuration. It helps isolate tenant data, manage tenant context, and keep tenant-aware queries consistent across your app.

  • Tenant context management for switching between tenants safely
  • Automatic query scoping to prevent cross-tenant data leaks
  • Configurable tenant resolution for your application’s needs
  • Laravel-friendly integration with existing models and workflows
Frequently asked questions about Multitenant Plugin
How do I install muhammad-nawlo/multitenant-plugin in a Laravel application?
Install it with Composer using composer require muhammad-nawlo/multitenant-plugin, then register the plugin in your Filament panel provider as described in the README. Because it builds on stancl/tenancy, you should have that package installed and configured with tenant identification middleware before enabling the Filament management UI. Confirm the exact service provider and panel registration syntax against the package composer.json and README, since v1.0.0 shipped without release notes. Run the config and migration publish commands in a throwaway branch first so you can see exactly what files the package adds.
Does this plugin replace stancl/tenancy or work alongside it?
It works alongside stancl/tenancy rather than replacing it. The plugin supplies a Filament interface for managing tenants, while stancl/tenancy provides the underlying tenant lifecycle, database connections, and identification middleware. Tenant creation, domain mapping, and database isolation still follow stancl/tenancy configuration and conventions. Plan to learn and configure stancl/tenancy itself, because the plugin is a management layer, not a standalone tenancy engine.
Which Laravel and PHP versions does this package support?
No supported-version matrix was published with v1.0.0, so the authoritative answer is the require block in the package composer.json. Check the laravel/framework, php, filament/filament, and stancl/tenancy constraints there and compare them with your application lockfile before committing. If the constraints are tight, routine Laravel patch upgrades may require an upstream release, which makes the maintainer release cadence part of your own. Prove compatibility in a spike on one service rather than inferring it from the package description.
How does domain and subdomain tenant routing work with this plugin?
Tenant routing is handled through stancl/tenancy identification middleware, with the plugin providing Filament screens for managing the tenant records and domain data that identification relies on. You configure central domains and the identification middleware in your tenancy configuration, and requests are resolved to a tenant before tenant-aware database connections are used. The package configuration helpers are meant to keep those settings manageable from the admin panel. Verify the exact middleware names and route patterns in the README, because the package does not publish a changelog or detailed reference for v1.0.0.
Can I use this plugin with Filament v3 or v4?
The package is a Filament plugin, but v1.0.0 does not document a Filament version compatibility matrix. Check the filament/filament constraint in composer.json and test panel registration in a spike before upgrading either side. Filament panel plugin APIs have changed across major versions, so an untested combination is a real upgrade risk. Pin Filament to a version the package explicitly allows and revisit the pin when the maintainer publishes release notes.
Does the plugin require database migrations or published config files?
Expect to publish configuration and possibly migrations, since managing tenants with stancl/tenancy involves tenant databases and tenancy configuration. Once published, those files live in your application and become yours to maintain, so review them before committing. Run the publish commands in a clean branch and diff the output to see exactly what the package owns versus what it expects you to own. That diff is also the basis for a clean uninstall test.
How should I test a multitenant Filament panel built with this plugin?
Use stancl/tenancy testing helpers to create a tenant, initialize tenancy, and run tenant migrations inside your test case, then assert that Filament resources only expose the current tenant records. Cover both central and tenant contexts, and add a request-level test that resolves a tenant by domain through the identification middleware. Keep tenant factories and seed data explicit, because multitenant suites fail most often when tenancy is initialized in one test and leaks into the next. Run the suite against the exact Laravel, PHP, and Filament versions you plan to deploy.
Is muhammad-nawlo/multitenant-plugin production-ready at version 1.0.0?
Treat the 1.0.0 tag as a stability signal for the public API, not as evidence of production hardening. The release shipped without release notes, a changelog, or a documented upgrade path, which is a governance gap rather than a cosmetic one. Before production use, confirm who maintains the package, how often patch releases land, and whether it keeps pace with Laravel majors. A timeboxed spike on one low-criticality service, plus an uninstall test, is the right gate.
What are the alternatives to using this plugin for Filament multitenancy?
The closest alternative is using stancl/tenancy directly and building your own Filament resources for tenant management, which gives you full control but requires more code. Filament built-in panel tenancy is another option, but it scopes records within a single database rather than providing stancl/tenancy database-per-tenant isolation. Choose based on whether your isolation requirement is row-level scoping or separate tenant databases. If you need database-per-tenant plus a ready admin UI, weigh this package maintenance signals against the cost of writing the Filament layer yourself.
How do I uninstall the plugin cleanly if we decide not to keep it?
Remove the Composer requirement, unregister the plugin from your Filament panel provider, and revert any config or migration files the package published. Check for container bindings, middleware registrations, and tenant columns that were added specifically for the plugin rather than for stancl/tenancy. Because no uninstall guide is published for v1.0.0, perform this in a branch and diff the schema and configuration afterward. If residue remains in persistence or request handling, treat that as a reason not to adopt.
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.
jinas/dhivatar
store-doc/laravel-storage-driver
plus-it/laravel-translation-manager
diephp/perhaps
diephp/telegraph
osmaviation/spreadsheet
microsoft/fluentui-system-icons
mmccook/php-json-canonicalization-scheme
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console
pnscripts/filament-broadquill-lite
pnscripts/laravel-sentfold-lite
vleap/mx-sdk-laravel-internal
twidpay/utils
htetmyathlaing/scout-elasticsearch-driver
artisan-toolbox/front-awesome
ls/client-assistant
users-au/laravel-client
cgv/localized-resource