neutron/form-bundle
Neutron Form Bundle streamlines form creation and management in PHP applications with reusable form components, validation, and flexible rendering. It simplifies submissions and customization while integrating smoothly with Symfony-style workflows.
Architecture fit
neutron/form-bundle is a Symfony bundle, not a Laravel package, and the request framing ("Laravel/PHP") is the single most important thing to correct before any planning. It registers through Symfony's Bundle/FrameworkBundle machinery and depends on symfony/form, symfony/framework-bundle, and Twig. There is no service provider, no config/form.php, no facade, and no publishable assets — so on Laravel it resolves in Composer and then boots nothing usable.
Even on Symfony the fit is poor. The bundle targets the Symfony 2.x era (AppKernel-style registration, old Composer constraints, likely PHP 5.x) and the "zero JavaScript" promise almost certainly rests on a companion set of neutron/* bundles plus an AngularJS 1.x-era client runtime that has been end-of-life since December 2021. The idea — a server-owned, declarative form schema that a thin client renders — remains a good one. The artifact carrying that idea is stale.
As a TPM, the relevant read is: this is a pattern source, not a delivery dependency. The composite score (~0.88, opportunity 0.86) is not aligned with what the repository actually shows (11 stars, 0 dependents, decade-old lineage). Treat the score as directional interest in the problem space, not as evidence of adoptability.
Integration feasibility
Low for a Laravel target — effectively zero direct integration. Concretely:
composer require will likely fail against PHP 8.1+ / Symfony 5.4+ / modern Composer 2 strictness without a fork and constraint rewrite; on Laravel it will install and be inert.Technical risk
High, and concentrated in maintenance rather than licensing:
Key questions
composer.json, and which neutron/* siblings are required?Stack fit
@once @push('scripts').Migration path
The defensible move is to adopt the architecture, not the code: a declarative, server-owned form schema that a thin client renders. Map that onto the target stack (Laravel → Livewire or Livewire-style Blade components; Symfony → Symfony UX / Live Components / Turbo, or a JSON-schema form renderer). If a hard fork is genuinely unavoidable — e.g. preserving an existing neutron-based app — scope it as: vendor under a local namespace, drop version constraints, pin every transitive dependency, freeze it, security patches only.
Compatibility
Assume incompatible with PHP 8.1+, Symfony 5.4+, and Composer 2 strictness. Verify before spending engineering time; a failed composer require in a clean container is a one-hour answer that de-risks the whole proposal and is worth doing first.
Sequencing
composer.json and Resources/views/, attempt install against the target framework. Output: go/no-go, plus a documented server→client form contract.Maintenance
Dominant cost. A fork means owning 100% of the code with no upstream to rebase against: PHP version bumps, dependency CVE triage, and browser-runtime drift (if AngularJS is involved, deprecated DOM APIs and IE-era assumptions become live issues). Budget it as a permanent line item, not a one-off. Under pattern-transfer, maintenance cost collapses to "we own ~20 lines per form component on a supported stack."
Support
Effectively none — no vendor, no maintainer, no community. Name a single internal owner and an explicit best-effort expectation before any adoption; absent that, the first incident has no escalation path.
Scaling
Unproven. Zero dependents means no evidence of behaviour at volume. Server-rendered schema generation is usually cheap server-side, but client-side rendering of large forms is a known performance cliff, and the client runtime here is one nobody on the team can profile comfortably. Treat any performance claim as unvalidated.
Failure modes
Ramp-up
High for low return. A new engineer needs Symfony-legacy idioms, the neutron sibling contract, and the client runtime — three unfamiliar layers before writing feature code. Realistic estimate: one to two weeks to productive contribution, versus days for any modern equivalent. The ramp-up cost alone likely exceeds rebuilding the pattern on a supported stack.
Recommendation to the TPM: keep this off the delivery dependency list. Fund a short spike to confirm incompatibility and to extract the server-owned form-schema pattern, then transfer it onto the maintained stack already in use. Flag the score-versus-signals divergence (0.88 composite against 11 stars / 0 dependents / Symfony-2-era code) as a calibration note for future shortlists — and correct the "Laravel/PHP" framing at intake, since it is the fastest way to avoid spending a sprint discovering the framework mismatch.
How can I help you explore Laravel packages today?