Download the PHP package tomatophp/filament-saas-panel without Composer

On this page you can find all versions of the php package tomatophp/filament-saas-panel. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package filament-saas-panel

Screenshot

Filament SaaS Panel

Dependabot Updates PHP Code Styling Tests Latest Stable Version License Downloads

Ready to use SaaS panel for your customers with Jetstream teams: registration with OTP, team management and invitations, profile, browser sessions and API tokens. Works with your own User model (Filament Accounts is optional).

Features

Screenshots

Teams Resource Teams Resource Dark Customer Panel Customer Panel Dark Team Settings Team Settings Dark Edit Profile Edit Profile Dark API Tokens API Tokens Dark Create Team Create Team Dark

Compatibility

Package Filament Laravel PHP
5.x 5.x 12.x / 13.x 8.3+
4.x 4.x 11.x / 12.x 8.2+

Team Invitation Links

Invitation links (team-invitations.accept and team-invitations.cancel) are signed URLs. Opening the link only shows a confirmation page; accepting or cancelling is a POST to the same signed URL.

Upgrade note: unsigned links (for example old /users/team-invitations/{id}/accept links stored in database notifications) no longer work and return 403. Ask the team admin to resend the invitation from the team page. If you link to these routes from your own code, generate the URL with URL::signedRoute('team-invitations.accept', ['invitation' => $invitation->id]).

Requirements

The SaaS panel is built on Laravel Jetstream teams and Laravel Sanctum. Both are installed with the package; you do not need to run php artisan jetstream:install.

Filament Accounts is not required. By default the panel works with your App\Models\User on the users table and the web guard; if your users live somewhere else (for example a Filament Accounts accounts table and guard) change user_model, user_table, team_id_column and auth_guard in the config (see Config).

Before installing, make sure your app has:

  1. a Filament panel for your customers, separate from your admin panel

  2. the Spatie media library media table (team and profile avatars). The package creates it when it is missing, so do not publish the media library migration again afterwards (a second create_media_table migration fails with table media already exists on a fresh database). If you want to publish it yourself, do it before installing this package:

  3. the sessions table when you use the browser sessions manager (SESSION_DRIVER=database, the Laravel default)

Installation

publish the team migrations (teams, team_user, team_invitations and the current_team_id / profile_photo_path columns on your user table). They use the configured user table, users by default, and skip tables and columns that already exist, so they are safe on an app that already has Jetstream teams.

publish the team models to app/Models (Team, TeamInvitation, Membership)

then run the install command, it runs the migrations (team tables, Sanctum personal_access_tokens, OTP columns)

now prepare your user model: add the InteractsWithTenant trait (Jetstream teams, Sanctum tokens, profile photo, media) and the Filament contracts

InteractsWithTenant::canAccessPanel() allows every panel; override it in your model to keep customers out of your admin panel.

finally register the plugin on /app/Providers/Filament/AppPanelProvider.php

on your admin panel provider if you like to have Team resource and features register this

Upgrading from 1.x / 4.x: the panel no longer needs Filament Accounts. If you saw Route [filament.admin.resources.accounts.index] not defined or no such table: accounts, publish the config and point user_model / user_table at the model and table you really use.

Config

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

you can publish it from this command

Custom Pages

you can change any page you want on the panel using the config like this

Publish Assets

you can publish config file by use this command

you can publish views file by use this command

you can publish languages file by use this command

you can publish migrations file by use this command

Testing

if you like to run PEST testing just use this command

Code Style

if you like to fix the code style just use this command

PHPStan

if you like to check the code by PHPStan just use this command

Other Filament Packages

Checkout our Awesome TomatoPHP


All versions of filament-saas-panel with dependencies

PHP Build Version
Package Version
Requires php Version ^8.2
tomatophp/console-helpers Version ^1.1
filament/filament Version ^5.0
laravel/jetstream Version ^5.0
laravel/sanctum Version ^4.0
filament/spatie-laravel-media-library-plugin Version ^5.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package tomatophp/filament-saas-panel contains the following files

Loading the files please wait ...