SaaS Panel
Ready to use SaaS panel with integration of Filament Accounts Builder and JetStream teams
Author:
Fady Mondy
Documentation
- Features
- Screenshot Teams
- Screenshot Account Team Components
- Screenshots Auth Process
- Screenshot Panel
- Screenshot Edit Teams
- Screenshots Edit Profile
- Screenshot API Tokens
- Installation
- Use On Existing User Model
- Change Panel ID
- Custom Pages
- Publish Assets
- Testing
- Code Style
- PHPStan
- Other Filament Packages

Ready to use SaaS panel with integration of Filament Accounts Builder and JetStream teams
#Features
- Login Page
- Register with OTP
- Login Check if Account Active or Blocked
- Create Team Page
- Edit Team Page
- Team Members List
- Team Invitation
- Delete Team
- Edit Profile
- Change Profile Password
- Browser Session Manager
- Delete Account
- API Tokens
- Team Resource
- Integration With Filament Social Login
- Integration With Filament Two Factory Authentication
- Integration With Wave Themes/Plugins
#Screenshot Teams

#Screenshot Account Team Components

#Screenshots Auth Process

#Screenshot Panel

#Screenshot Edit Teams

#Screenshots Edit Profile

#Screenshot API Tokens

#Installation
composer require tomatophp/filament-saas-panel
now you need to publish teams migration
php artisan vendor:publish --tag="filament-saas-teams-migrations"
after install your package please run this command
php artisan filament-saas-panel:install
now you need to publish teams models and account model with injection of teams
php artisan vendor:publish --tag="filament-saas-teams-models"
create a new panel for app
php artisan filament:panel app
finally register the plugin on /app/Providers/Filament/AppPanelProvider.php
->plugin(
\TomatoPHP\FilamentSaasPanel\FilamentSaasPanelPlugin::make()
->editTeam()
->deleteTeam()
->showTeamMembers()
->teamInvitation()
->allowTenants()
->checkAccountStatusInLogin()
->APITokenManager()
->editProfile()
->editPassword()
->browserSessionManager()
->deleteAccount()
->editProfileMenu()
->registration()
->useOTPActivation()
)
on your admin panel provider if you like to have Team resource and features register this
->plugin(
\TomatoPHP\FilamentSaasPanel\FilamentSaasTeamsPlugin::make()
)
#Use On Existing User Model
if you have User.php published on your /app/Models folder and you don't need to publish it again just add this trait to your model
use \TomatoPHP\FilamentSaasPanel\Traits\InteractsWithTenant;
and implament this interfaces
use Filament\Models\Contracts\HasTenants;
use Filament\Models\Contracts\FilamentUser;
use Filament\Models\Contracts\HasAvatar;
use Spatie\MediaLibrary\HasMedia;
class User extends Authenticatable implements FilamentUser, HasAvatar, HasMedia, HasTenants
{
}
#Change Panel ID
if you like to change the panel name on your config just change id and name on config/filament-saas-panel.php
return [
"id" => "user"
];
you can publish it from this command
php artisan vendor:publish --tag="filament-saas-panel-config"
#Custom Pages
you can change any page you want on the panel using the config like this
'pages' => [
'teams' => [
'create' => \TomatoPHP\FilamentSaasPanel\Filament\Pages\CreateTeam::class,
'edit' => \TomatoPHP\FilamentSaasPanel\Filament\Pages\EditTeam::class,
],
'profile' => [
'edit' => \TomatoPHP\FilamentSaasPanel\Filament\Pages\EditProfile::class,
],
'auth' => [
'login' => \TomatoPHP\FilamentSaasPanel\Filament\Pages\Auth\LoginAccount::class,
'register' => \TomatoPHP\FilamentSaasPanel\Filament\Pages\Auth\RegisterAccount::class,
'register-without-otp' => \TomatoPHP\FilamentSaasPanel\Filament\Pages\Auth\RegisterAccountWithoutOTP::class,
],
],
#Publish Assets
you can publish config file by use this command
php artisan vendor:publish --tag="filament-saas-panel-config"
you can publish views file by use this command
php artisan vendor:publish --tag="filament-saas-panel-views"
you can publish languages file by use this command
php artisan vendor:publish --tag="filament-saas-panel-lang"
you can publish migrations file by use this command
php artisan vendor:publish --tag="filament-saas-panel-migrations"
#Testing
if you like to run PEST testing just use this command
composer test
#Code Style
if you like to fix the code style just use this command
composer format
#PHPStan
if you like to check the code by PHPStan just use this command
composer analyse
#Other Filament Packages
Checkout our Awesome TomatoPHP
The author
Ready to use SaaS panel with integration of Filament Accounts Builder and JetStream teams
From the same author
Tenancy Multi-database
Tenancy multi-database integration for FilamentPHP
Author:
Fady Mondy
Menu Generator
Menu view generator using view component
Author:
Fady Mondy
Translations Manager
Manage your translation with DB and cache, you can scan an collect translation strings like `trans()` and `__()`, and translate them using UI
Author:
Fady Mondy
Meta Manager
Convert any model on your app to pluggable model using Meta and get ready to use relation manager on FilamentPHP panel
Author:
Fady Mondy
Featured Plugins
A selection of plugins curated by the Filament team
Custom Dashboards
Let your users build and share their own dashboards with a drag-and-drop interface. Define your data sources in PHP and let them do the rest.
Filament
Data Lens
Advanced Data Visualization for Laravel Filament - a premium reporting solution enabling custom column creation, sophisticated filtering, and enterprise-grade data insights within admin panels.
Padmission
Custom Fields
Eliminate custom field migrations forever. Let your users create and manage form fields directly in Filament admin panels with 20+ built-in field types, validation, and zero database changes.
Relaticle