mhujer/consistence-bundle
Symfony bundle integrating the Consistence library, adding strict typing, enums, and value object support to your Symfony app. Provides service and Doctrine integration for cleaner domain models.
consistence/consistence. For a Laravel codebase, the equivalent is ~50–100 lines (a Blade component or a Rule::enum + __() label map). The build-vs-buy answer is almost certainly build in Laravel and buy (i.e., install) only in a Symfony/Consistence-heavy stack.consistence/consistence enums over native PHP 8.1 backed enums. That is a strategic decision about domain modeling, not just UI — it touches validation, persistence (Doctrine mapping), and API serialization.Consider it only when all of the following hold:
consistence/consistence enums in your domain layer and want Symfony EnumType form elements plus translator integration without writing glue.Look elsewhere (or build in-house) when:
Rule::enum, Blade @foreach, and __() label maps cover this with zero third-party risk.Executive summary: This is a small Symfony bundle that turns PHP enums into translatable form dropdowns. It solves a real but narrow problem — consistent, localized enum labels in admin and back-office forms — and it does so with minimal code.
Recommendation: Treat it as a reference implementation, not a dependency. For a Laravel product, we should not adopt it: the framework mismatch is total, the package has negligible adoption (1 star, 0 dependents), and the functionality is trivially reproducible with native enums plus a label translation map. For a Symfony product already standardized on Consistence enums, it is a low-effort convenience worth evaluating in a spike, with a fork-and-vendor fallback documented.
What it costs us: MIT license, no commercial lock-in, but also no support contract. The real cost is the risk of an unmaintained dependency in UI plumbing and the coupling of our domain enums to a specific library's enum abstraction.
What we get: A repeatable pattern for localized enum labels, faster delivery of admin filters and status selectors, and a clear precedent for how we model enum-to-UI translation across the product. Even if we don't install it, the pattern is worth copying into an internal helper — which gives us the benefit with none of the dependency risk.
How can I help you explore Laravel packages today?