wouterj/eloquent-bundle
Integrates Laravel's Eloquent ORM into Symfony applications. Register Eloquent models as services and use the familiar ActiveRecord-style API—queries, relationships, and migrations—in your Symfony project, alongside or instead of Doctrine, with full dependency injection support.
Architecture fit
wouterj/eloquent-bundle is a Symfony bundle that wires Laravel's Eloquent ORM (illuminate/database and friends) into the Symfony service container. Despite the framing as a "Laravel/PHP package," its actual value proposition is the inverse: it lets a Symfony application use Laravel's ORM. That inversion is the single most important architectural fact for a TPM to surface, because it determines whether this is a fit or a foreign-body transplant.
Integration feasibility
Mechanically feasible: illuminate/database is designed to be usable standalone via Capsule, and the bundle's job is small — register the connection manager, model factory, and config. A spike should take days, not weeks.
The feasibility question is therefore not "can we wire it" but "can we own it." With 166 stars, a single-maintainer lineage, and an aggregate score of ~19.8 with an opportunity score of 2.59, the ecosystem signal is weak. Opportunity score that low suggests the package is not on a growth trajectory and is unlikely to attract contributors or commercial backing. Treat it as sample code you may adopt, not a dependency you may rely on.
Technical risk
illuminate/database major. Laravel ships breaking changes annually; Symfony ships majors on a fixed cadence. The intersection is narrow and the maintainer bears the whole cost of tracking it.$fillable/$guarded) and raw-query ergonomics need explicit team conventions; the bundle enforces none of them.Key questions to resolve before commitment
illuminate/database version pairs are declared and tested, and does the constraint set include our current and next-year targets?Stack fit
Assume a PHP 8.x Symfony application. The bundle fits only if we accept Eloquent as a first-class, exclusive persistence layer for the services that use it. The recommended posture is a strangler-style boundary: one bounded context or new service uses Eloquent; everything else stays on Doctrine. Do not attempt a phased, table-by-table ORM migration inside a single deployable — the transactional and identity-map mismatches make partial migration the worst of both worlds.
Migration path
Compatibility
Pin aggressively. Use exact or tilde constraints on both symfony/* and illuminate/database, and add a CI job that runs the full matrix we care about. Add a Composer conflict guard against known-bad Laravel majors. Verify that the bundle's service definitions survive cache:warmup and container compilation — lazy/compiled-container interactions are a common breakage point for third-party bundles.
Sequencing
Maintenance
This is the dominant cost. The package is MIT, community-supported, and shows low ecosystem momentum. We inherit the obligation to track two upstream release trains. Realistic estimate: a few hours per quarter for routine bumps, and a multi-day scramble whenever a Laravel major or Symfony major lands and the bundle lags. Budget an internal owner by name, not a team alias — abandoned single-maintainer bundles fail organizationally before they fail technically.
Support
No vendor, no SLA, no security response process beyond the maintainer's discretion. Mitigations: fork the repository into our org on day one (cheap insurance), watch releases, and pre-write the replacement plan. Do not adopt this in a tier-0 system without an internal fork and a designated maintainer.
Scaling
Eloquent scales well for conventional OLTP workloads, but the team must internalize its failure modes:
chunkById, cursor) rather than get() on large sets.Failure modes
illuminate/database constraint, or vice versa. Highest-probability, highest-impact.Ramp-up
Split-brain knowledge is the hidden cost: engineers need both Symfony bundle conventions and Laravel ORM idioms. Expect 1–2 weeks for a competent Symfony developer to become productive and 4–6 weeks to become fluent in the sharp edges. Documentation for this bundle is sparse, so internal runbooks — connection config, transaction rules, eager-loading conventions, migration ownership — are mandatory deliverables of the pilot, not afterthoughts.
TPM recommendation
The technical bridge is real and small, but the operational bet is not. Given 166 stars, a single-maintainer lineage, and an opportunity score of 2.59 indicating no ecosystem tailwind, treat this as adopt-with-fork in a bounded, non-critical context — or as reference material if the wiring effort (days) is less than the upkeep risk (quarters). It should not enter a tier-0 Symfony estate that already runs Doctrine.
How can I help you explore Laravel packages today?