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

zenstruck/form-bundle

Symfony bundle that improves form rendering with ready-to-use Bootstrap form themes and handy form type extensions. It reduces custom form template boilerplate while keeping Symfony's native form system intact, making it easy to build cleaner, consistent forms across your application.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Not a build-vs-buy decision — a "don't build on this" decision. At 25 stars, zero dependents, no release since October 2015, and archived status, this is not a candidate for adoption in any roadmap. The value of this assessment is closing the question quickly so engineering time isn't spent evaluating it further.
  • Useful as a pattern reference, not a dependency. The bundle packages four things our admin/CRUD surfaces routinely need: a Bootstrap form theme, a help type extension for inline field guidance, Ajax/Tunnel/Select2 entity pickers (type-ahead search over related records instead of a 5,000-item <select>), and JS helpers to wire them together. If we're scoping an admin panel or internal tool, that list is a reasonable feature checklist for our own form layer — but we should implement it against maintained primitives.
  • Informs our forms/UX standard. Entity-autocomplete and inline help text are table stakes for internal tools. If a product spec calls for "select a customer/account/user from a large dataset," the answer is a searchable entity picker, and this package's existence confirms that's a solved, well-understood pattern rather than a novel feature requiring research.
  • Stack mismatch is itself a finding. Despite the framing, this is a Symfony bundle, not Laravel. It has no bearing on a Laravel codebase, and its Symfony 2-era APIs have no path to modern Symfony either. It should be recorded as out-of-scope for our stack, not as a deferred option.
  • Roadmap implication: zero budget, zero migration planning, zero security review. Cost of the decision is a few hours of evaluation, which this assessment closes.

When to Consider This Package

Consider it only in these narrow cases:

  • You maintain a legacy Symfony 2.3–2.8 / early 3.x application that already has this bundle installed, and you're assessing whether removal is worth the effort. Even then, the answer is usually "leave it until the surrounding app is replaced," because it's inert rather than dangerous — no active exploit surface if it isn't receiving untrusted input beyond normal form handling.
  • You need a historical reference implementation of a Bootstrap 3 form theme or a Select2/Ajax entity type for a Symfony project, and you want to see how it was idiomatically done circa 2015 before writing your own. Read the source; don't require it.
  • You're doing due diligence on a fork or an inherited codebase and need to know what the dependency actually does and whether it's safe to keep pinned.

Look elsewhere — decisively — when:

  • You're on Laravel. Wrong framework entirely. Use Livewire, Inertia + a Vue/React select component, or standard Blade form components.
  • You're on Symfony 4/5/6/7. The bundle predates Symfony Flex, autowiring conventions, and the current form theming system. Use Symfony UX (including symfony/ux-autocomplete and symfony/ux-tom-select), EasyAdmin or SonataAdmin for CRUD, and a maintained Bootstrap 4/5 theme.
  • You need Bootstrap 4 or 5. This ships Bootstrap 3 markup. Class names, grid behavior, and form control structure will not match any current design system.
  • You need security patching, PHP 8.x compatibility, or a support path. All absent. Archived means no CVE response, no PR review, no compatibility work.
  • Any new product with a multi-year life. Adopting an archived dependency for a net-new surface is a maintenance liability with no offsetting benefit; the ~50 lines it saves are cheaper to write than the eventual forced migration.

How to Pitch It (Stakeholders)

Executive summary: recommend no action. Do not adopt; do not invest.

zenstruck/form-bundle is a small, Symfony-only helper library from the Symfony 2 era that bundles a Bootstrap 3 form theme, an inline help-text field type, and Ajax/Select2 entity pickers for admin forms. It was last released in October 2015, has 25 GitHub stars, zero dependent packages, and is archived — meaning no maintenance, no security response, and no compatibility work with current PHP or Symfony versions.

For engineering: it is not applicable to our Laravel stack, and it is not viable on modern Symfony either. It uses pre-Flex conventions and Bootstrap 3 markup, both of which conflict with anything we'd build today. There is no upgrade path, so adopting it would create a guaranteed future migration with no compensating velocity gain — the functionality is a few hundred lines against maintained libraries, and the maintained equivalents (Symfony UX autocomplete, EasyAdmin, Livewire/Inertia components, or a standard React/Vue select) are actively supported and already in our ecosystem.

For product/design: the features it describes are legitimate and worth keeping on our admin-tooling checklist — searchable entity pickers instead of giant dropdowns, and inline help text on form fields. Treat the package purely as evidence that these patterns are standard and cheap to build, not as a component we buy.

The trade-off in one line: we spend a small amount of evaluation time now to avoid a certain, unbudgeted rewrite later. There is no scenario where adding this dependency is cheaper than writing the equivalent functionality against tools we already maintain.

Ask: close the evaluation, note the package as "evaluated, rejected — archived and stack-incompatible" in our component registry, and let the team reference its patterns informally when specifying admin form behavior.

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.
coleus/frame
thtg88/journalism
filagora/filagora-ai-forums
rlacerda83/query-parser
socialdept/atp-orm
cboxdk/laravel-assistant-client
socialdept/atp-resolver
socialdept/tenant-domains
tautvydasr/blade-class-names
socialdept/color-scales
maherelgamil/controller
coleus/widgets
coleus/table
coleus/users
coleus/music
coleus/health
coleus/calendar
coleus/notes
coleus/support
coleus/settings