- What is Grafite FormMaker used for in Laravel?
- Grafite FormMaker is used to build and render forms in Laravel with less repetitive Blade markup. Each form is a PHP class that declares a fields() array and renders itself via formHtml() or string casting in Blade, which suits repeated admin panel and CRUD forms. It fits server-rendered Laravel monoliths with conventional controller-to-view flows. It is not a reactive UI framework, so it is a weaker fit for Inertia, Vue, Svelte, Livewire-heavy, or API-first applications.
- How do I install grafite/formmaker in a Laravel app?
- Install it with Composer using the package name grafite/formmaker. The service provider is auto-discovered, and the documented setup includes publishing the config and field partials so you can override markup. Because v6.0.0 has no published changelog or compatibility matrix, run a fresh install and render spike on your current Laravel and PHP versions before adopting it. Confirm the resolved illuminate/* constraints in Composer rather than assuming support.
- Does Grafite FormMaker support Laravel 10, 11, or 12?
- The provided material does not state a supported Laravel version matrix, and the v6.0.0 release note only mentions Bootstrap 5 compatibility and more. Nothing in that note indicates the Composer illuminate/* constraint has moved past Laravel 8/9. PHP 8.1+ deprecation issues may also be untouched. Treat Laravel 10, 11, and 12 support as unverified until you check composer.json and complete an install-and-render spike.
- How do I define fields and customize FormMaker markup, including Bootstrap 5?
- Fields are declared in a form class fields() array with a type, name, options, and attributes, and you can override buildForm() for more control. The package renders field partials that can be published and edited, which is the documented customization path. Grafite FormMaker v6.0.0 announces Bootstrap 5 compatibility, meaning the shipped markup and CSS classes were likely updated. Tailwind or other CSS frameworks are not described, so you would need to override partials yourself. If you previously edited published partials, expect drift when upgrading to v6.
- Can Grafite FormMaker handle model binding for create and edit forms?
- Yes. The package describes model binding for create and edit forms, which is one of its main fits for admin panels and CRUD workflows. You define the form as a class and bind the model so relationship-aware inputs can be rendered for editing. The exact API is not covered in the provided material, so verify the binding syntax against the package source or README. Test both create and edit paths, especially relationship fields, before relying on it in production.
- How does validation work with Grafite FormMaker?
- Validation rules can be declared alongside fields, and the package also describes old-input support. However, the validation source of truth often remains in the controller or FormRequest, creating two places to keep in sync. That convention-bound duplication is a known defect source in form builder packages. Keep rules centralized or test both layers so field definitions and request validation do not drift.
- How do I test forms built with Grafite FormMaker?
- Form classes are plain PHP classes, so you can instantiate them and assert field composition from fields() or buildForm(). You can also render formHtml() and assert the resulting HTML for expected fields, values, and escaping. The provided material does not describe dedicated test helpers, so plan on normal PHPUnit feature or unit tests. Include tests for old input, model binding, relationship inputs, and any published partial overrides.
- Is Grafite FormMaker output safe for production?
- Form HTML is emitted unescaped by design, typically through Blade's {!! !!} syntax, so correct escaping depends on field-level discipline. The v6.0.0 markup rewrite is exactly the kind of change that can introduce escaping regressions, so review rendered output rather than inheriting a prior sign-off. Do not pass untrusted values into field options or attributes without explicit escaping. Add regression tests for user-supplied values, labels, and relationship data.
- Is Grafite FormMaker licensed for commercial or enterprise use?
- The prior license state was NOASSERTION, and the v6.0.0 release note makes no reference to licensing. Absent written confirmation, that remains a legal stop-sign for commercial or enterprise use. A new release does not clear the issue, and an active release is a good moment to ask the maintainer for explicit terms. Get written confirmation before shipping it in a commercial product.
- Is Grafite FormMaker maintained, and what are the alternatives?
- It is best described as revived but unproven: v6.0.0 arrived after roughly three years, which shows the project is not dead but does not establish a maintenance cadence. The project still has low adoption signals such as 37 stars, zero dependents, and a single-maintainer ecosystem, and there is no published changelog. The provided material does not name alternatives, so compare it with your existing Blade components or partials, Laravel form builders already in your stack, and reactive admin tools if you need Livewire or SPA behavior. Run a tag diff and compatibility spike before treating v6 as a safe upgrade.