Built 2018 to 2019 · Status Retired · Stack Laravel package, PHP, Blade, jQuery formBuilder, Parsley
This was an installable Laravel package that gave an application's own users a form builder. They could create, edit and delete forms in the browser, and every form came with a unique link they could share to collect responses.
Purpose
Applications keep needing one more form, and the usual answer is a developer writing a migration, a model, a controller and a view for each one. That is slow for the developer and slower for the person who wanted the form. The people with this problem were Laravel developers whose users needed to make their own forms without filing a ticket every time.
What it did
The design decision that made the rest work was storing each form's field definitions as JSON on the form record instead of turning them into database columns. A new form meant a new row, not a schema change, so users could add and remove fields freely without anything on the back end having to know in advance what the form contained. The package shipped two tables, one for forms and one for submissions, and later added a column that let a form post to a custom submit URL rather than the default handler.
Every form belonged to the user who created it, and every form had its own shareable public link, so an author could build a form and hand out the URL without going near the application's admin area. The builder interface itself was jQuery based. It installed through Composer and required Laravel 5.7.
Features
- Form builder UI let users create, edit and delete forms in the browser with no developer involved.
- JSON field storage saved each form's field definitions as JSON in the database, so adding fields never required a migration.
- Per user ownership tied every form to the account that created it.
- Shareable links gave each form a unique public URL for collecting responses.
- Submission storage kept responses in their own table alongside the form definitions.
- Custom submit URL allowed a form to post to a destination other than the package's own handler.
Impact
This is the most used thing I have released. I wrote the code in late 2018 and published it on Packagist as jazmy/jaz-form-builder in January 2019, where it has since passed 11,000 installs. The GitHub repository has just under 100 stars. Developers I have never met sent pull requests, including one that made the migrations work on Laravel 6, and the last of those landed in October 2020.
That is also where I stopped. The README says so in my own words: I am no longer maintaining this package, and it may not be compatible with Laravel 7 or 8. There are no further updates, no maintenance and no technical support, so anyone installing it now does so at their own risk. The code is still public and still gets pulled in, but nothing new has gone into it since 2020.
Screens

Links
- jazmy/laravel-formbuilder on GitHub, the source and the README.
- jazmy/jaz-form-builder on Packagist, where it installs from.