Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Form Bundle Laravel Package

atoolo/form-bundle

Provides an HTTP interface for displaying and processing forms using JSON Forms in Symfony applications.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Build vs. buy for schema-driven forms. The core decision this package informs is not "which form library" but "do we treat forms as data (JSON Schema + UI Schema, rendered and validated by a generic engine) or as code (Blade/Blade components + FormRequests)?" That is a roadmap-level architecture choice with multi-quarter consequences, and it should be made once, deliberately, rather than per-feature.
  • Whether to run a headless form service. This bundle exposes an HTTP interface for displaying and processing forms, so it can be evaluated as a small standalone service that a Laravel app calls over HTTP. That reframes the decision as "one more service to operate" versus "one more thing to build and maintain in-house" — a familiar PM tradeoff with a clear cost line on both sides.
  • Scope and roadmap for form-heavy surfaces. If a meaningful share of the backlog is "another variant of the same form" — tenant-configurable onboarding, internal approval workflows, questionnaires, configurators, regulatory intake — a schema-driven engine changes the unit of delivery from "ticket per form" to "ticket per schema." That is the real product argument, and it is testable against the actual roadmap rather than in the abstract.
  • Where to spend the coupling budget. Choosing this package means accepting a Symfony dependency inside a Laravel estate. That is a legitimate option if forms are a differentiating, high-volume surface — and a poor one if forms are incidental CRUD. The decision should be tied to how central forms are to the product, not to how appealing the JSON Forms abstraction looks.
  • Risk posture on a single-vendor dependency. MIT license, one organizational author (sitepark), 0 stars, 0 dependents, documentation living on the vendor's own docs site. The product decision this enables is a calibrated bet: pilot on a non-critical surface with a documented exit, or decline and keep forms in-house. Either is defensible; the failure mode is adopting it informally and discovering the maintenance burden later.
  • Ecosystem bet on JSON Forms. The package is thin — its value is largely JSON Forms' schema vocabulary. Adopting it is implicitly a bet that JSON Schema / UI Schema as a form contract is worth standardizing on internally, which has value independent of this bundle (frontend renderers, validation parity, generated API contracts). Worth separating from the bundle decision itself.

When to Consider This Package

Consider it when:

  • You already run Symfony somewhere in the estate, or have engineers fluent in Symfony bundles, DI, and the HTTP kernel. The integration cost drops from "significant" to "routine" in that case, and this bundle becomes a reasonable component rather than an architectural event.
  • The form surface is genuinely dynamic: many structurally similar forms, tenant- or customer-specific variants, or schemas that non-engineers should be able to change without a deploy.
  • You want server-side authoritative validation and processing driven by the same schema that drives the UI — i.e., you care about the processing side of forms, not just rendering.
  • You are comfortable running a small internal service (or embedding it) with its own deployment, monitoring, auth boundary, and upgrade cadence.
  • The candidate use case is internal/admin tooling, where a small set of generic controls and schema-driven layouts are acceptable and pixel-perfect UI is not the differentiator.
  • You can absorb the risk of a low-adoption, single-vendor dependency: MIT means you can fork, and the surface is small enough that forking is plausible.

Look elsewhere when:

  • The stack is Laravel and staying Laravel. This is a Symfony bundle; it is not a Laravel package. There is no service provider, no Blade integration, no FormRequest bridge, no Laravel auth/middleware hook. Native adoption means either embedding a Symfony kernel inside Laravel (high complexity, two containers, two event systems, awkward debugging) or running it as a separate service. If neither is acceptable, stop here.
  • You want forms solved inside Laravel: Livewire, Filament, Nova, or plain FormRequest + Blade cover the large majority of form needs with zero new infrastructure and full team familiarity.
  • Your forms are mostly static CRUD. Schema engines pay off with variation; with five stable forms you are buying abstraction you will never amortize.
  • You need a mature, supported vendor relationship — SLAs, security response commitments, a community to hire from. 0 stars and 0 dependents means no community. The release history shows a security-audit-driven dependency bump as a headline fix in 1.1.0, which is normal hygiene, not evidence of a support commitment.
  • You need rich, custom interaction design (drag-and-drop builders, complex conditional UX, real-time collaborative editing). JSON Forms' generic renderer will fight you, and the escaping cost lands on the frontend team.
  • The team has no Symfony experience and no appetite to acquire it. The integration risk here is organizational more than technical, and it does not get cheaper after kickoff.

Verification before any commitment: the newest release listed is dated 2026-10-01, which is inconsistent with a repository that has no visible activity trail in the provided sources. Confirm the actual release timeline, PHP/Symfony version support matrix, test coverage, and whether documentation covers the HTTP contract (endpoints, payloads, error shapes). Also confirm the license and the vendor's maintenance posture in writing. Do not treat the README's one-line description as a specification.

How to Pitch It (Stakeholders)

To executives — frame as a bounded experiment, not a platform bet.

"There's a small open-source component that lets us define forms as data instead of code, so the same form definition drives both the UI and server-side validation. The potential upside is real: form-heavy features stop being bespoke builds and become configuration. But two things temper it. First, it's built for Symfony, not Laravel, so using it means adding a second framework to our stack or running it as a separate service — real operational cost. Second, it has essentially no adoption: zero stars, zero dependents, one maintainer. My recommendation is not to adopt it. My recommendation is to spend a small, time-boxed amount proving out the idea — schema-driven forms — on one internal form, and decide from evidence. If the idea doesn't pay off on one form, the vendor question is moot."

To engineering — be precise about what this is and isn't.

"This is a Symfony bundle exposing an HTTP interface for rendering and processing forms via JSON Forms. It is not a Laravel package. Concrete implications: no service provider, no Blade/FormRequest integration, and Laravel's container and Symfony's DI container don't compose cleanly. Two viable paths — (a) run it as a small standalone service and call it from Laravel over HTTP, accepting a network hop, a second deploy target, and an auth boundary; or (b) skip the bundle and use JSON Forms directly on the frontend with our own Laravel validation, which gets us the schema contract without the second framework. Path (b) is likely the better default. Path (a) is worth pricing only if the server-side form-processing logic is the thing we actually want to buy rather than build. Either way, the decision we're really making is whether to standardize on JSON Schema as our form contract — that's the durable part, and it survives this vendor."

To design and UX.

"The value here is consistency and speed for standard controls, not bespoke interaction. JSON Forms ships a generic renderer with a conventional control set; it's a good fit for internal tools and structured intake, and a poor fit for anything where the form's feel is part of the product. If we proceed, plan for a constrained component library rather than per-screen design, and validate accessibility of the renderer before committing to a customer-facing surface."

Recommendation to record. Decline adoption of atoolo/form-bundle as a dependency; keep the underlying idea — schema-driven forms — on the radar. If form-variant volume is genuinely high, prototype JSON Forms on the frontend against existing Laravel validation, which captures most of the upside with none of the cross-framework cost. Revisit the bundle only if we end up operating Symfony anyway, or if the project gains adoption and a supportable release cadence.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
andydefer/laravel-notification
adachsoft/cli-process-tester
jhaskell13/laraflow
sebastienheyd/boilerplate-media-manager
ccast/tagixo-primix
pretendtrue/laravel-builder
sawmainek/laravel-scout-tntsearch-driver
tomshaw/laravel-calendar-table
dibakar/laravel-ownership
steadrun/laravel-monitor
labyrinthe/connect-laravel
elmogy/layan
drewdan/sentinel-client
dskripchenko/laravel-llm
fatryst/nuonuo
stevenay/myanfont
gmostafa/php-graphql-client
xeviant/paystack
snowsoft/faker
meditationsteps/blogetc