PHPackages                             mominalzaraa/filament-team-guard - 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. [Authentication &amp; Authorization](/categories/authentication)
4. /
5. mominalzaraa/filament-team-guard

ActiveLibrary[Authentication &amp; Authorization](/categories/authentication)

mominalzaraa/filament-team-guard
================================

Filament Team Guard — enhanced Laravel starter kit built with Filament. Team management, auth, 2FA, passkeys, API tokens. Inspired by Laravel Jetstream.

v2.1.0(1mo ago)1159↓50%2MITPHPPHP ^8.3CI passing

Since Nov 18Pushed 2mo agoCompare

[ Source](https://github.com/MominAlZaraa/filament-team-guard)[ Packagist](https://packagist.org/packages/mominalzaraa/filament-team-guard)[ Docs](https://github.com/MominAlZaraa/filament-team-guard)[ GitHub Sponsors](https://github.com/MominAlZaraa)[ RSS](/packages/mominalzaraa-filament-team-guard/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (10)Dependencies (31)Versions (12)Used By (0)

Filament Team Guard — Enhanced Laravel Starter Kit Built With Filament
======================================================================

[](#filament-team-guard--enhanced-laravel-starter-kit-built-with-filament)

[![Latest Version on Packagist](https://camo.githubusercontent.com/e750f9a98d73a67c26bfbe379e97f508694cb09854d2bc47be17e9ef7302bdec/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6d6f6d696e616c7a617261612f66696c616d656e742d7465616d2d67756172643f7374796c653d666c61742d737175617265266c6f676f3d7061636b6167697374)](https://packagist.org/packages/mominalzaraa/filament-team-guard)[![Total Downloads](https://camo.githubusercontent.com/b18e1a4642895b80dc6e181b724c92c8fc4294a62b39f44388ebee961e21ccf2/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f6d6f6d696e616c7a617261612f66696c616d656e742d7465616d2d67756172643f7374796c653d666c61742d737175617265266c6f676f3d7061636b6167697374)](https://packagist.org/packages/mominalzaraa/filament-team-guard)[![GitHub Tests](https://camo.githubusercontent.com/82daaeb5b4085e58918e622136716229cd3d5f1d12b7dd006e2a741cdd6f2ea0/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f4d6f6d696e416c5a617261612f66696c616d656e742d7465616d2d67756172642f72756e2d74657374732e796d6c3f6272616e63683d6d61696e266c6162656c3d7465737473267374796c653d666c61742d737175617265266c6f676f3d676974687562)](https://github.com/MominAlZaraa/filament-team-guard/actions/workflows/run-tests.yml)[![Code Style](https://camo.githubusercontent.com/3ec1a062b66a384e873b4e7a4c001cc2019dde6b858dbc63b8fcd573ca912f2b/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f4d6f6d696e416c5a617261612f66696c616d656e742d7465616d2d67756172642f636f64652d7374796c652e796d6c3f6272616e63683d6d61696e266c6162656c3d636f64652532307374796c65267374796c653d666c61742d737175617265266c6f676f3d676974687562)](https://github.com/MominAlZaraa/filament-team-guard/actions/workflows/code-style.yml)[![License](https://camo.githubusercontent.com/b6e0675b5baa7f7417fb464e71a29f14573f781e6263359902d326f63c478770/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f6c2f6d6f6d696e616c7a617261612f66696c616d656e742d7465616d2d67756172643f7374796c653d666c61742d737175617265)](https://github.com/MominAlZaraa/filament-team-guard/blob/main/LICENSE.md)[![PHP Version](https://camo.githubusercontent.com/f60655d5835f8bc2da8b9fbcab44218fcd4ddcd1e6152d943d69f90932fbb1a0/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f646570656e64656e63792d762f6d6f6d696e616c7a617261612f66696c616d656e742d7465616d2d67756172642f7068703f7374796c653d666c61742d737175617265266c6f676f3d706870)](https://packagist.org/packages/mominalzaraa/filament-team-guard)[![Sponsor](https://camo.githubusercontent.com/e8bb5efd6e5f50ac420c1cd6019311ab720796105bf407eab936b58ad6087313/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f73706f6e736f72732f4d6f6d696e416c5a617261613f7374796c653d666c61742d737175617265266c6f676f3d676974687562)](https://github.com/sponsors/MominAlZaraa)

[![Filament Team Guard Banner](https://raw.githubusercontent.com/MominAlZaraa/filament-team-guard/main/.github/plugin-banner.jpg)](https://raw.githubusercontent.com/MominAlZaraa/filament-team-guard/main/.github/plugin-banner.jpg)

**Requirements**: PHP ^8.3 | ^8.4 | ^8.5 · Laravel ^12.0 · Filament ^5.0 (Livewire ^4.0, Tailwind ^4.0)

Enhanced Laravel starter kit built with Filament, inspired by [Laravel Jetstream](https://github.com/laravel/jetstream) (discontinued). Brings **team features, mature data handling, and Filament UI**—auth, registration, 2FA, passkeys, session management, API tokens, teams. Skip boilerplate, start building.

**Supported**: PHP ^8.3–^8.5, Filament ^5.0, Laravel ^12.0, Livewire ^4.0, Tailwind ^4.0 · **Deprecated**: PHP &lt;8.3, Filament v4 (use [v1.x](https://github.com/MominAlZaraa/filament-team-guard/releases)), Laravel &lt;12.

---

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

[](#installation)

```
composer require mominalzaraa/filament-team-guard
php artisan filament-team-guard:install --teams --api
```

Omit `--teams` / `--api` if not needed. Action classes and email templates are published for customization.

---

Features
--------

[](#features)

- **Auth** — Login, register, password reset, email verification
- **Profile** — Photo, info, password, sessions, delete account
- **2FA &amp; passkeys** — Embedded TOTP, recovery codes, [Spatie Laravel Passkeys](https://github.com/spatie/laravel-passkeys). Enable via `->twoFactorAuthentication()`.
- **Cloudflare Turnstile** — Optional `->turnstile()` on auth + 2FA challenge/recovery. [njoguamos/laravel-turnstile](https://github.com/njoguamos/laravel-turnstile); set `TURNSTILE_*` in `.env`, run `php artisan turnstile:install`.
- **Teams** — Create, invite, roles, member management (add/remove/update role)
- **API tokens** — Optional Sanctum-style tokens
- **i18n** — Publishable locale-first language files

---

Enhanced vs stephenjude/filament-jetstream
------------------------------------------

[](#enhanced-vs-stephenjudefilament-jetstream)

- **Publishable Action classes** (Jetstream pattern): `UpdateUserProfileInformation`, `InviteTeamMember`, `AddTeamMember`, `RemoveTeamMember`, `UpdateTeamMemberRole`, `CreateTeam`, `UpdateTeamName`, `DeleteTeam`, `ValidateTeamDeletion`, `DeleteUser` — all with contracts.
- **Email invitations** — Registered/unregistered flow; “Create Account” when needed; session-based redirects; no auto-registration.
- **Profile fields** — Override `getFieldComponents()`, `getSectionHeading()`, `getSectionDescription()` in published Action; add translations in `lang/{locale}/filament-team-guard.php`.
- **Team management** — Custom `Role` rule, `UpdateTeamMemberRole`, `RemoveTeamMember`, `ValidateTeamDeletion`.
- **Publishable** — Actions, emails, lang; locale-first translations with merge/override.

---

Customization
-------------

[](#customization)

WhatCommandAction classes`php artisan vendor:publish --tag=filament-team-guard-actions`Language files`php artisan vendor:publish --tag=filament-team-guard-lang`Email templates`php artisan vendor:publish --tag=filament-team-guard-email-templates`**Profile field example**: Publish actions + lang → add key in `lang/en/filament-team-guard.php` → in `UpdateUserProfileInformation` override `getFieldComponents()` and add a `TextInput::make('surname')` (and translation) → add `surname` to User `$fillable`.

---

Configuration (snippets)
------------------------

[](#configuration-snippets)

**Profile (2FA, passkeys, photo, etc.)**

```
JetstreamPlugin::make()
    ->configureUserModel(userModel: User::class)
    ->profilePhoto(condition: fn() => true, disk: 'public')
    ->deleteAccount(condition: fn() => true)
    ->updatePassword(condition: fn() => true, Password::default())
    ->profileInformation(condition: fn() => true)
    ->logoutBrowserSessions(condition: fn() => true)
    ->twoFactorAuthentication(
        condition: fn() => auth()->check(),
        forced: fn() => app()->isProduction(),
        enablePasskey: fn() => Feature::active('passkey'),
        requiresPassword: fn() => app()->isProduction(),
    );
```

**Teams**

```
JetstreamPlugin::make()
    ->teams(condition: fn() => Feature::active('teams'), acceptTeamInvitation: fn($id) => JetstreamPlugin::make()->defaultAcceptTeamInvitation())
    ->configureTeamModels(teamModel: Team::class, roleModel: Role::class, membershipModel: Membership::class, teamInvitationModel: TeamInvitation::class);
```

**API tokens**

```
JetstreamPlugin::make()->apiTokens(condition: fn() => Feature::active('api'), permissions: fn() => ['create','read','update','delete'], menuItemLabel: fn() => 'API Tokens', menuItemIcon: fn() => 'heroicon-o-key');
```

---

Existing Laravel projects
-------------------------

[](#existing-laravel-projects)

- **Profile**: `php artisan vendor:publish --tag=filament-team-guard-migrations --tag=passkeys-migrations` → add `InteractsWithProfile`, `HasProfilePhoto`, implement `HasAvatar` &amp; `HasPasskeys` on User; hide 2FA fields; append `profile_photo_url`.
- **Teams**: `php artisan vendor:publish --tag=filament-team-guard-team-migration` → add `InteractsWithTeams`, implement `HasTenants` on User.
- **API**: Same team migration tag → add `HasApiTokens` on User.

---

Package development
-------------------

[](#package-development)

Run `composer install` in the package root for tests. `vendor/` is in `.gitignore` and not distributed; `composer require mominalzaraa/filament-team-guard` in an app only pulls package source—the app’s Composer resolves Filament once (no duplication). `.gitattributes` has `/vendor export-ignore`.

---

Testing · Changelog · Contributing
----------------------------------

[](#testing--changelog--contributing)

- **Tests**: `composer test`
- **Changelog**: [CHANGELOG.md](CHANGELOG.md)
- **Contributing**: [.github/CONTRIBUTING.md](.github/CONTRIBUTING.md)

Credits
-------

[](#credits)

- [Laravel Jetstream](https://github.com/laravel/jetstream) (discontinued) — team features &amp; Action pattern
- [stephenjude/filament-jetstream](https://github.com/stephenjude/filament-jetstream) — Filament port
- [Momin Al Zaraa](https://github.com/MominAlZaraa) — this enhanced version · [Issues](https://github.com/MominAlZaraa/filament-team-guard/issues) ·

**License**: MIT. See [LICENSE.md](LICENSE.md).

###  Health Score

47

—

FairBetter than 94% of packages

Maintenance88

Actively maintained with recent releases

Popularity18

Limited adoption so far

Community16

Small or concentrated contributor base

Maturity56

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 74.1% 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

Every ~13 days

Total

11

Last Release

49d ago

Major Versions

v1.0.4 → v2.0.02026-01-30

PHP version history (4 changes)v1.0.0PHP ^8.3|^8.4

v2.0.0PHP ^8.3|^8.4|^8.5

v2.0.2PHP ^8.2

v2.1.0PHP ^8.3

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/64691179?v=4)[Momin Al Zaraa](/maintainers/MominAlZaraa)[@MominAlZaraa](https://github.com/MominAlZaraa)

---

Top Contributors

[![stephenjude](https://avatars.githubusercontent.com/u/31182887?v=4)](https://github.com/stephenjude "stephenjude (197 commits)")[![MominAlZaraa](https://avatars.githubusercontent.com/u/64691179?v=4)](https://github.com/MominAlZaraa "MominAlZaraa (30 commits)")[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (14 commits)")[![github-actions[bot]](https://avatars.githubusercontent.com/in/15368?v=4)](https://github.com/github-actions[bot] "github-actions[bot] (9 commits)")[![tomhatzer](https://avatars.githubusercontent.com/u/3952168?v=4)](https://github.com/tomhatzer "tomhatzer (4 commits)")[![gpibarra](https://avatars.githubusercontent.com/u/21188012?v=4)](https://github.com/gpibarra "gpibarra (3 commits)")[![zvizvi](https://avatars.githubusercontent.com/u/4354421?v=4)](https://github.com/zvizvi "zvizvi (2 commits)")[![fabpl](https://avatars.githubusercontent.com/u/6574025?v=4)](https://github.com/fabpl "fabpl (2 commits)")[![YoussefGoher](https://avatars.githubusercontent.com/u/127972819?v=4)](https://github.com/YoussefGoher "YoussefGoher (2 commits)")[![wotta](https://avatars.githubusercontent.com/u/13332240?v=4)](https://github.com/wotta "wotta (1 commits)")[![cklei-carly](https://avatars.githubusercontent.com/u/68525320?v=4)](https://github.com/cklei-carly "cklei-carly (1 commits)")[![LucaPipolo](https://avatars.githubusercontent.com/u/2393718?v=4)](https://github.com/LucaPipolo "LucaPipolo (1 commits)")

---

Tags

laravelAuthentication2famulti-tenantfilamentstarter-kitTeamspasskeysmominalzaraafilament-team-guard

###  Code Quality

TestsPest

Static AnalysisPHPStan

Code StyleLaravel Pint

### Embed Badge

![Health badge](/badges/mominalzaraa-filament-team-guard/health.svg)

```
[![Health](https://phpackages.com/badges/mominalzaraa-filament-team-guard/health.svg)](https://phpackages.com/packages/mominalzaraa-filament-team-guard)
```

###  Alternatives

[jeffgreco13/filament-breezy

A custom package for Filament with login flow, profile and teams support.

1.0k1.7M41](/packages/jeffgreco13-filament-breezy)[stephenjude/filament-two-factor-authentication

Filament Two Factor Authentication: Google 2FA + Passkey Authentication

81158.7k4](/packages/stephenjude-filament-two-factor-authentication)[bezhansalleh/filament-shield

Filament support for `spatie/laravel-permission`.

2.8k2.9M88](/packages/bezhansalleh-filament-shield)[andrewdwallo/filament-companies

A comprehensive Laravel authentication and authorization system designed for Filament, focusing on multi-tenant company management.

34450.0k2](/packages/andrewdwallo-filament-companies)[stephenjude/filament-jetstream

A Laravel starter kit built with Filament inspired by Jetstream.

17554.3k2](/packages/stephenjude-filament-jetstream)[webbingbrasil/filament-2fa

A 2FA plugin for filament.

4740.7k](/packages/webbingbrasil-filament-2fa)

PHPackages © 2026

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