├── config ├── .gitkeep └── filament-saas-panel.php ├── resources ├── js │ └── .gitkeep ├── lang │ └── .gitkeep └── views │ ├── .gitkeep │ ├── livewire │ ├── sanctum-tokens.blade.php │ ├── contact-us.blade.php │ └── otp.blade.php │ ├── teams │ ├── api-tokens.blade.php │ └── edit-profile.blade.php │ ├── forms │ └── components │ │ ├── team-members.blade.php │ │ ├── delete-team-description.blade.php │ │ ├── delete-account-description.blade.php │ │ ├── team-owner.blade.php │ │ └── browser-sessions.blade.php │ └── emails │ └── team-invitation.blade.php ├── src ├── Console │ ├── .gitkeep │ └── FilamentSaasPanelInstall.php ├── Models │ ├── .gitkeep │ ├── Membership.php │ ├── TeamInvitation.php │ └── Team.php ├── Filament │ ├── Pages │ │ ├── .gitkeep │ │ ├── EditProfile │ │ │ ├── HasBrowserSessions.php │ │ │ ├── HasDeleteAccount.php │ │ │ ├── HasNotification.php │ │ │ ├── HasEditProfile.php │ │ │ └── HasEditPassword.php │ │ ├── EditTeam │ │ │ ├── HasDeleteTeam.php │ │ │ ├── HasNotifications.php │ │ │ ├── HasManageTeamMembers.php │ │ │ ├── HasCancelTeamInvitation.php │ │ │ ├── HasEditTeam.php │ │ │ ├── HasLeavingTeam.php │ │ │ ├── HasManageRoles.php │ │ │ └── HasTeamInvitation.php │ │ ├── ApiTokens.php │ │ ├── CreateTeam.php │ │ ├── EditTeam.php │ │ ├── Auth │ │ │ ├── LoginAccount.php │ │ │ ├── RegisterAccountWithoutOTP.php │ │ │ └── RegisterAccount.php │ │ └── EditProfile.php │ ├── Resources │ │ ├── .gitkeep │ │ ├── TeamResource │ │ │ ├── Filters │ │ │ │ └── TeamFilter.php │ │ │ ├── Pages │ │ │ │ └── ListTeams.php │ │ │ ├── Table │ │ │ │ └── TeamColumn.php │ │ │ ├── Form │ │ │ │ └── TeamComponent.php │ │ │ └── Actions │ │ │ │ ├── TeamTableAction.php │ │ │ │ └── TeamBulkAction.php │ │ └── TeamResource.php │ ├── Widgets │ │ └── .gitkeep │ └── Forms │ │ ├── EditProfileForm.php │ │ ├── UpdateTeamForm.php │ │ ├── EditPasswordForm.php │ │ ├── DeleteAccountForm.php │ │ ├── DeleteTeamForm.php │ │ ├── ManageTeamMembersForm.php │ │ └── BrowserSessionsForm.php ├── Http │ ├── Middleware │ │ └── .gitkeep │ ├── Requests │ │ └── .gitkeep │ └── Controllers │ │ ├── .gitkeep │ │ └── TeamsController.php ├── Responses │ └── RegisterResponse.php ├── Actions │ ├── Jetstream │ │ ├── DeleteTeam.php │ │ ├── UpdateTeamName.php │ │ ├── CreateTeam.php │ │ ├── DeleteUser.php │ │ ├── RemoveTeamMember.php │ │ ├── AddTeamMember.php │ │ └── InviteTeamMember.php │ └── Fortify │ │ ├── PasswordValidationRules.php │ │ ├── ResetUserPassword.php │ │ ├── UpdateUserPassword.php │ │ ├── CreateNewUser.php │ │ └── UpdateUserProfileInformation.php ├── Listeners │ ├── CreatePersonalTeam.php │ └── SwitchTeam.php ├── Events │ ├── SendOTP.php │ ├── SendWelcome.php │ ├── AccountLogged.php │ ├── AccountOTPCheck.php │ └── AccountRegistered.php ├── Mail │ └── TeamInvitation.php ├── Traits │ └── InteractsWithTenant.php ├── FilamentSaasTeamsPlugin.php └── FilamentSaasPanelServiceProvider.php ├── tests ├── src │ ├── Models │ │ ├── .gitkeep │ │ ├── Membership.php │ │ ├── TeamInvitation.php │ │ ├── User.php │ │ └── Team.php │ ├── DebugTest.php │ ├── TestAPIKeysPage.php │ ├── TestCreateTeamPage.php │ ├── TestRegisterPage.php │ ├── TestEditTeamPage.php │ ├── TestLoginPage.php │ ├── TestEditProfilePage.php │ ├── AdminPanelProvider.php │ ├── TestTeamsResource.php │ ├── AppPanelProvider.php │ ├── TestCase.php │ └── PluginTest.php ├── database │ ├── factories │ │ ├── .gitkeep │ │ ├── TeamFactory.php │ │ └── UserFactory.php │ ├── database.sqlite │ └── migrations │ │ ├── 2024_11_04_112951_create_teams_table.php │ │ ├── 2024_11_04_112952_create_team_invitations_table.php │ │ ├── 2024_07_15_150609_create_personal_access_tokens_table.php │ │ ├── 2024_11_04_112953_create_team_user_table.php │ │ ├── 2024_10_28_143941_add_media_if_not_exists_table.php │ │ └── 2025_08_25_143941_add_otp_fields_if_not_exists_table.php └── Pest.php ├── .github ├── FUNDING.yml ├── SECURITY.md ├── dependabot.yml ├── ISSUE_TEMPLATE │ ├── config.yaml │ └── bug.yml ├── workflows │ ├── fix-php-code-styling.yml │ ├── dependabot-auto-merge.yml │ └── tests.yml └── CONTRIBUTING.md ├── CHANGELOG.md ├── arts ├── login.png ├── otp.png ├── panel.png ├── api-tokens.png ├── edit-team.png ├── register.png ├── team-form.png ├── team-table.png ├── teams-list.png ├── create-team.png ├── create-token.png ├── delete-modal.png ├── edit-profile.png ├── logout-modal.png ├── team-invite.png ├── team-members.png ├── teams-action.png ├── token-modal.png ├── change-password.png ├── create-tenant.png ├── session-delete.png ├── team-settings.png ├── panel-tenant-menu.png ├── team-settings-not-owner.png └── fadymondy-tomato-saas-panel.jpg ├── SECURITY.md ├── publish ├── Membership.php ├── TeamInvitation.php ├── migrations │ ├── create_teams_table.php │ ├── create_team_invitations_table.php │ └── create_team_user_table.php ├── Team.php └── Account.php ├── .gitignore ├── fadymondy-tomato-saas-panel.md ├── routes └── web.php ├── LICENSE.md ├── phpunit.xml ├── database └── migrations │ ├── 2024_07_15_150609_create_personal_access_tokens_table.php │ ├── 2024_10_28_143941_add_media_if_not_exists_table copy.php │ └── 2025_08_25_143941_add_otp_fields_if_not_exists_table.php ├── testbench.yaml ├── module.json ├── composer.json └── CODE_OF_CONDUCT.md /config/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /resources/js/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /resources/lang/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/Console/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/Models/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /resources/views/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/Filament/Pages/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/Http/Middleware/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/Http/Requests/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/src/Models/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/Filament/Resources/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/Filament/Widgets/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/Http/Controllers/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/database/factories/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | github: [fadymondy] 2 | -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # V1.0.0 2 | 3 | First release of the package 4 | -------------------------------------------------------------------------------- /arts/login.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomatophp/filament-saas-panel/HEAD/arts/login.png -------------------------------------------------------------------------------- /arts/otp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomatophp/filament-saas-panel/HEAD/arts/otp.png -------------------------------------------------------------------------------- /arts/panel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomatophp/filament-saas-panel/HEAD/arts/panel.png -------------------------------------------------------------------------------- /resources/views/livewire/sanctum-tokens.blade.php: -------------------------------------------------------------------------------- 1 |