Spiggle Form Builder
CommunityA lightweight, open-source package that brings powerful, database-driven form generation to your Laravel and Filament applications.
Author:
Spiggle
Package health
BetaAutomated checks of this plugin's Composer package
15 checks
- Failed: GitHub Actions pinned to SHA — View details on Plumb
- Skipped: GitLab CI includes pinned to SHA
- Passed: Open security advisories
- Passed: Dependabot PR responsiveness — No open Dependabot PRs.
- Skipped: Renovate MR responsiveness
- Failed: Dependabot or Renovate configured — No dependency updater configuration found. View details on Plumb
- Skipped: Dependency update cooldown configured
- Failed: Provides a security policy — View details on Plumb
- Passed: Abandoned or archived — No consulted source marks the package abandoned (packagist, github).
- Passed: Commit and release recency — Active: last commit 0 days ago; last release 0 days ago.
-
Passed:
composer.lock not committed by library
—
composer.lockis absent from the released dist archive. - Passed: Dist archive is lean
-
Passed:
Current Laravel version supported
—
Package dependencies resolve together with current Laravel
13.0. -
Passed:
Current PHP version supported
—
Constraint
^8.2supports current PHP8.5. - Skipped: Current Symfony version supported
filament/
namespace. Review the source and install at your own risk. Found
malware or an unresolved security issue the author won't
address?
Report it
.
Documentation
- Why use Form Builder?
- Community Edition features
- Pro features
- Requirements
- Installation
- Quick start
- Artisan commands
- Related
- License
Public forms for Laravel + Filament — build once, publish anywhere.
Create forms in the admin panel, share a public URL, and collect submissions without shipping a custom frontend for every intake form.
| Package | spiggle/form-builder-core v2.0.0 |
| License | MIT (Community Edition) |
| GitHub | skillbobby/Spiggle-Form-Builder-Core |
| Docs | Product site & guide |
#Why use Form Builder?
- No-code form building — drag sections and fields in Filament; publish when ready
- Public renderer — self-contained Blade + Livewire UI that works without Filament CSS on the guest side
- Submission inbox — filter, review, archive, and export responses
- Validation & sanitization — Laravel rules on submit; HTML stripped from plain text
- Custom public paths —
/forms/{path}with conflict hashing - Dynamic Fields ready — reuses the same field type catalog when Dynamic Fields is installed
- Pro-ready —
FeatureCatalog/ProUnlockhooks let the licensed add-on unlock advanced layouts and exports
#Community Edition features
Included free in Core:
| Single-page layouts | Public form URL + Livewire renderer |
| Submission manager | Status filters, bulk status/archive/delete |
| CSV export | Native fputcsv |
| Form JSON export/import | Move definitions between environments |
| Seed / verify commands | Sample forms + health checks |
| Audit log table | Exports and bulk actions recorded |
| Label positions | Above, inline, below, inside |
#Pro features
Need multi-step flows, premium exports, or analytics? Upgrade to Form Builder Pro — a separate licensed add-on that installs alongside Core.
| Pro-only | |
|---|---|
| Wizard / Tabs / Pages | Stepped validation, client tabs, session drafts |
| XLSX + PDF export | SpreadsheetML Excel + printable PDF |
| Analytics charts | Submission volume and status widgets |
| Form clone | Duplicate a form in one click |
| Import from Dynamic Fields | Pull existing custom field definitions into a form |
| Email notify hooks | Store notify addresses for your FormSubmitted listeners |
| License management | Activate and manage your Pro license in Filament |
Business / unlimited-site licensing: Get Business license.
#Requirements
- PHP 8.3+
- Laravel 13
- Filament ^5
#Installation
#1. Require the package
composer require spiggle/form-builder-core
#2. Publish config & migrations, then migrate
php artisan vendor:publish --tag=form-builder-config
php artisan vendor:publish --tag=form-builder-migrations
php artisan migrate
#3. Register the Filament plugin
In your panel provider (e.g. app/Providers/Filament/AdminPanelProvider.php):
use Spiggle\FormBuilder\Filament\FormBuilderPlugin;
$panel->plugin(FormBuilderPlugin::make());
This adds Forms and Submissions under your configured navigation group.
#4. Open a public form
Published forms are served at:
/{FORM_BUILDER_ROUTE_PREFIX}/{base_path}
Default prefix: forms.
#Quick start
- Sign in to your Filament panel.
- Go to Forms → Forms.
- Create a form, add fields, set Published.
- Share the public URL from the form list or view page.
Seed sample forms:
php artisan form-builder:seed
#Artisan commands
| Command | Description |
|---|---|
form-builder:seed |
Seed sample forms and submissions |
form-builder:export |
Export form definitions to JSON |
form-builder:import {path} |
Import form definitions from JSON |
form-builder:verify |
Health-check tables, validation, and CSV export |
#Related
- Full documentation — architecture, workflows, configuration
- Demo video — Forms, public URL, builder, and submissions
- Live demo —
demo@user.net/password - Spiggle Dynamic Fields Core — reusable field types for Eloquent models
#License
MIT — see LICENSE. Community Edition is free and open source. Pro is a separate commercial add-on.
The author
From the same author
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
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
Advanced Tables (formerly Filter Sets)
Supercharge your tables with powerful features like user-customizable views, quick filters, multi-column sorting, advanced table searching, convenient view management, and more. Compatible with Resource Panel Tables, Relation Managers, Table Widgets, and Table Builder!
Kenneth Sese