PHPackages                             omardavila/base-tenant-filament - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Admin Panels](/categories/admin)
4. /
5. omardavila/base-tenant-filament

ActiveLibrary[Admin Panels](/categories/admin)

omardavila/base-tenant-filament
===============================

Multi-tenant Filament scaffold with Store tenant, FilamentShield and Spatie Permission

v1.0.0(1mo ago)01↓88.9%MITPHPPHP ^8.2

Since May 31Pushed 1mo agoCompare

[ Source](https://github.com/Miocids/base-tenant-filament-package)[ Packagist](https://packagist.org/packages/omardavila/base-tenant-filament)[ RSS](/packages/omardavila-base-tenant-filament/feed)WikiDiscussions main Synced 1w ago

READMEChangelogDependencies (3)Versions (2)Used By (0)

Base Tenant Filament
====================

[](#base-tenant-filament)

Multi-tenant Filament scaffold with **Store** as tenant, FilamentShield and Spatie Permission — wired up in one command.

Requirements
------------

[](#requirements)

- PHP ^8.2
- Laravel ^11|^12|^13
- Filament ^5.0
- bezhansalleh/filament-shield ^4.0
- spatie/laravel-permission ^6.0|^7.0

Installation
------------

[](#installation)

```
composer require omardavila/base-tenant-filament
```

```
php artisan base-tenant:install
```

```
php artisan migrate
```

Done. Visit `/admin` and register your first store.

What `base-tenant:install` does
-------------------------------

[](#what-base-tenantinstall-does)

StepWhat changesPublishes migrations`stores` and `store_users` tablesConfigures `config/permission.php``teams: true`, `team_foreign_key: store_id`Replaces `app/Models/User.php`Adds `HasStores` trait, implements `FilamentUser` + `HasTenants`Replaces `app/Providers/Filament/AdminPanelProvider.php`Wires tenant, registration page, Shield plugin with `scopeToTenant(false)`, `SyncShieldTenant` middlewareWhat you get
------------

[](#what-you-get)

- **Store** as Filament tenant — users can belong to many stores and switch between them
- **RegisterStore** page — users without a store are redirected here automatically
- **super\_admin** role created per store on registration — bypasses all Gate checks (sees everything)
- **Spatie Permission teams** scoped to `store_id` — roles and permissions are isolated per store
- **FilamentShield** roles excluded from tenant scoping — roles are global across the panel

Architecture
------------

[](#architecture)

```
User ──< StoreUser >── Store   (many-to-many, pivot with softDeletes)
Store ──< model_has_roles      (via store_id team column in Spatie Permission)

```

Customizing
-----------

[](#customizing)

After install, all files live in your project — edit freely:

- `app/Models/Store.php` — add fields, relationships
- `app/Models/User.php` — extend as needed
- `app/Filament/Pages/Tenancy/RegisterStore.php` — customize registration form
- `app/Providers/Filament/AdminPanelProvider.php` — panel config

The package models (`OmarDavila\BaseTenantFilament\Models\Store`) are used internally. The published `App\Models\Store` takes precedence once you run install.

Publishing assets individually
------------------------------

[](#publishing-assets-individually)

```
# Only migrations
php artisan vendor:publish --tag=base-tenant-migrations

# Only config
php artisan vendor:publish --tag=base-tenant-config
```

License
-------

[](#license)

MIT

###  Health Score

37

—

LowBetter than 81% of packages

Maintenance89

Actively maintained with recent releases

Popularity1

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity46

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

54d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/2408238?v=4)[Fabian Alejandro Vargas Gonzalez](/maintainers/miocid)[@Miocid](https://github.com/Miocid)

---

Top Contributors

[![Miocids](https://avatars.githubusercontent.com/u/108991213?v=4)](https://github.com/Miocids "Miocids (1 commits)")

### Embed Badge

![Health badge](/badges/omardavila-base-tenant-filament/health.svg)

```
[![Health](https://phpackages.com/badges/omardavila-base-tenant-filament/health.svg)](https://phpackages.com/packages/omardavila-base-tenant-filament)
```

###  Alternatives

[ercogx/laravel-filament-starter-kit

This is a Filament v5 Starter Kit for Laravel 13, designed to accelerate the development of Filament-powered applications.

461.8k](/packages/ercogx-laravel-filament-starter-kit)[waguilar33/filament-guardian

Role and permission management for Filament

162.7k](/packages/waguilar33-filament-guardian)[tapp/filament-lms

193.5k](/packages/tapp-filament-lms)[a2insights/filament-saas

Filament Saas for A2Insights

191.7k](/packages/a2insights-filament-saas)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
