Download the PHP package tapp/filament-form-builder without Composer

On this page you can find all versions of the php package tapp/filament-form-builder. 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-form-builder

Filament Forms

Latest Version on Packagist GitHub Tests Action Status GitHub Code Style Action Status Total Downloads

A Filament plugin and package that allows the creation of forms via the admin panel for collecting user data on the front end. Forms are composed of filament field components and support all Laravel validation rules. Form responses can be rendered on the front end or exported to .csv.

Requirements

Dependencies

Version Compatibility

Filament Filament Form Builder Documentation
4.x/5.x 4.x Current
3.x 1.x Check the docs

Installing the Filament Forms Package

Install the plugin via Composer:

This package is not yet on Packagist. Add the repository to your composer.json

You can publish the migrations with:

[!WARNING]
If you are using multi-tenancy please see the "Multi-Tenancy Support" instructions below before publishing and running migrations.

You can run the migrations with:

Optional: Publish the package's views, translations, and config

You can publish the view file with:

You can publish the config file with:

Adding the plugins to panels

The package provides three plugins for different panel types:

1. Admin Panel Plugin (FilamentFormBuilderPlugin)

Add this plugin to your admin panel to manage forms, fields, and entries. This plugin registers the FilamentFormResource which provides CRUD operations for forms.

2. Guest Panel Plugin (FilamentFormBuilderGuestPlugin)

Add this plugin to your guest panel (for unauthenticated users) to display forms and form entries. This plugin registers the ShowForm and ShowEntry pages for public access.

3. Frontend/App Panel Plugin (FilamentFormBuilderFrontendPlugin)

Add this plugin to your app/frontend panel (for authenticated users) to display forms and form entries. This plugin registers the ShowForm and ShowEntry pages for authenticated access.

Public Form Access

Forms can be accessed via the following routes (configured in config/filament-form-builder.php):

The routes automatically use the appropriate panel (guest or app) based on authentication status. Forms with permit_guest_entries enabled can be viewed by unauthenticated users in the guest panel, while authenticated users will be redirected to the app panel.

Configuration

You can customize the package behavior by publishing and editing the config file:

Key configuration options include:

See config/filament-form-builder.php for all available configuration options.

Private entries

You can restrict who can view or export form entries on a per-form basis. When Private entries is enabled for a form, the package uses your application’s policy to decide visibility.

App setup (required for private entries)

  1. Register a policy for Tapp\FilamentFormBuilder\Models\FilamentForm (e.g. FilamentFormPolicy).

  2. Implement viewEntries on that policy with this exact method name and signature. Put all your logic here (e.g. “Admin only”); no gate is required:

    The package calls $user->can('viewEntries', $ownerRecord) when:

    • Deciding whether to show the Entries relation manager for a form (edit page).
    • Deciding whether to show the Export Selected bulk action.

    If your policy does not define viewEntries, the package does not restrict the Entries tab or export (all users who can view the form see them).

  3. Entry-level visibility: In your FilamentFormUser policy view() method, when the entry’s form has private_entries, delegate to the same policy so individual entry view links are restricted:

  4. Form edit UI: The Private entries toggle on the form is disabled when the form is private and the current user fails viewEntries, so they cannot turn the setting off to gain access.

No gate and no extended relation manager are required—the package’s relation manager and resource use the policy when viewEntries is present.

Configuring Tailwind:

Add this to your tailwind.config.js content section:

Disabling Redirect

You can disable the redirect when including the Form/Show component inside of another component by passing the 'blockRedirect' prop as follows

Multi-Tenancy Support

This plugin includes comprehensive support for multi-tenancy, allowing you to scope forms, form fields, and entries to specific tenants (e.g., Teams, Organizations, Companies).

⚠️ Important: Configure Before Migration

You MUST enable and configure tenancy BEFORE running migrations! The migrations check the tenancy configuration to determine whether to add tenant columns to the database tables. Enabling tenancy after running migrations will require manual database modifications.

Configuration

Update your config/filament-form-builder.php configuration file:

Setup Steps

  1. Configure tenancy in config/filament-form-builder.php (set enabled to true and specify your tenant model)
  2. Publish migrations: php artisan vendor:publish --tag="filament-form-builder-migrations"
  3. Run migrations: php artisan migrate
  4. Configure your Filament Panel with tenancy:

How It Works

When tenancy is enabled:

Disabling Tenancy

To disable tenancy, set enabled to false in your configuration:

Events

Livewire

The FilamentForm/Show component emits an 'entrySaved' event when a form entry is saved. You can handle this event in a parent component to as follows.

Laravel

The component also emits a Laravel event that you can listen to in your event service provider


All versions of filament-form-builder with dependencies

PHP Build Version
Package Version
Requires php Version ^8.3
filament/filament Version ^5.0|^4.0
illuminate/contracts Version ^13.0||^12.0
maatwebsite/excel Version ^4.0||^3.0
spatie/eloquent-sortable Version ^5.0
spatie/laravel-medialibrary Version ^11.12
spatie/laravel-package-tools Version ^1.16
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 tapp/filament-form-builder contains the following files

Loading the files please wait ...