innomedio/sulu-form-landing-page-bundle
A Sulu CMS bundle for building form-enabled landing pages. It lets editors integrate and manage forms directly within landing pages, simplifying form setup and rendering for lead-generation and marketing pages.
Framing correction (read first): Despite the brief describing this as a "Laravel/PHP package," this is a Sulu CMS bundle — Sulu is a Symfony-based content management platform. It will not install into a Laravel application, and no amount of adapter work makes that sensible. Any evaluation must be scoped to "do we run Sulu 2.x with SuluFormBundle?" If the answer is no, the assessment ends here.
What changed in v3.0.1. Release notes are a single line: "Update Symfony version." Read precisely, that is a dependency constraint change with no functional delta. Three things follow. First, the existence of a v3.x line is new information relative to the prior assessment — a major-version bump has occurred at some point, and this patch sits on top of it; our compatibility analysis must target v3.x, not the 2024-08 artifact previously referenced. Second, the Symfony ceiling/floor has moved, which is the single highest-leverage fact for us: a constraint bump can just as easily drop the Symfony version our Sulu pins as it can add support for a newer one. Third, it is weak but real evidence that the maintainer is still shipping — "effectively unmaintained" softens to "single-maintainer, low but non-zero activity." One patch release is not a maintenance guarantee; do not let it change the fork-and-own conclusion, only the urgency.
Architecture fit. The bundle's scope remains narrow and well-defined: it extends Sulu's form subsystem so an editor can pick a landing page (redirect target) per form, and on successful submission the user is redirected there instead of seeing the default success flash. That is a genuine gap in Sulu's out-of-box form behavior, which is why the opportunity score (9.02) is high while the quality/adoption score (0.005) is near zero. Read those two numbers together: the problem is real and underserved; the artifact is unproven. A Symfony-bump patch release does not move the quality score materially.
Fit is good only if: (a) you are on Sulu 2.x, (b) SuluFormBundle is already in use, (c) your forms currently end in a dead-end confirmation page and stakeholders want post-submit routing (thank-you pages, gated downloads, campaign funnels, conversion tracking), and (d) your Symfony version survives the new constraint.
Integration feasibility. Mechanically unchanged and small: composer require, bundle registration in config/bundles.php, and typically a template/config override so the redirect field appears in the form editor. Expect a schema touch if the redirect target is persisted on the form entity. Total surface area looks like a handful of classes plus admin UI config — auditable end-to-end in under a day. The only new work item is resolving which v3.x patch matches our Symfony/Sulu pins; treat v3.0.1 as the default target and step back only if the constraint rejects our stack.
Technical risk.
composer update can change our supported-platform matrix without a major-version signal. Pin exactly, commit the lockfile, and read the diff of every subsequent patch.Key questions.
Stack fit. Symfony/Sulu only. Prerequisites: Sulu 2.x, SuluFormBundle, an existing form submission flow, an editor population that actually wants per-form routing, and — new gating item — a Symfony version inside the v3.0.1 constraint. If we are a Laravel shop, this package remains out of scope and the correct move is to build the equivalent (a redirect field on the form model plus a post-submit handler) in-house in a day or two.
Migration path. Three realistic starting states:
If we are already on a pre-v3 tag, treat 3.0.1 as a major-line migration, not a patch bump: read the v3.0.0 changes before assuming a drop-in.
Compatibility. Now the explicit first deliverable rather than a footnote. Target v3.0.1 as the reference version; pin the bundle, then pin Sulu/Symfony around it, or accept that we fork and patch the constraint. Verify on a scratch Sulu install before touching a production codebase, and record the resolved composer.lock as the artifact of record.
Sequencing.
composer.json between the version we would have used and 3.0.1. If it excludes our Symfony, stop and choose pin-versus-fork.Maintenance. The dominant cost is still ownership, but the 3.0.1 release adds a concrete, recurring chore: patch releases can move platform constraints, so composer update on this dependency is a reviewed change, never an autopilot one. With negligible dependents and one maintainer, assume we fork within 12 months. Budget a small but recurring allocation for Sulu upgrade cycles. This remains a "vendor a 400-line feature" decision, not a "take a dependency" decision — the patch release buys us a little time, not a support contract.
Support. No community, no Stack Overflow corpus, no issue-tracker velocity to rely on. Internal documentation of the redirect semantics (status code, ordering relative to email/persistence, target validation rules) is mandatory and should be written during the spike, not after. Add a short "version pin rationale" note recording why we sit on whatever v3.x patch we sit on — future-us will otherwise bump it blind and discover the constraint change in production.
Scaling. Negligible runtime cost — a redirect decision on a submit path. Scale concerns live in the form submission itself (spam, file uploads, notification email throughput), which this bundle neither helps nor hinders. Admin-side, every additional form gains a field editors can misconfigure; that is content-governance load, not compute load.
Failure modes to instrument.
Add a smoke test that submits a form and asserts the redirect target resolves to a 200 on every deploy — and run it specifically after any dependency update touching Symfony, Sulu, or this bundle.
Ramp-up. Low for engineers (small codebase, conventional Sulu bundle patterns; ~1 day to full comprehension, plus an hour to absorb the v3 line if migrating). Moderate for content editors (one new field, one new set of rules). Low for ops if vendored through Composer properly.
Verdict. Unchanged in direction, marginally improved in timing. High-value problem, low-maturity artifact; v3.0.1 is housekeeping on a dependency constraint, not a maturity signal. Proceed only with an explicit fork-and-own commitment and a spike that validates the v3.0.1 Symfony constraint against our stack first; otherwise implement the equivalent in-house for roughly the same effort and without the dependency risk.
How can I help you explore Laravel packages today?