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

Eav Bundle Laravel Package

msgphp/eav-bundle

A Symfony bundle for entity-attribute-value (EAV) modeling, letting you attach flexible, dynamic attributes and typed values to entities without schema changes. Integrates with Doctrine and the msgphp domain layer for extensible, metadata-driven data storage.

View on GitHub
Deep Wiki
Context7

A Symfony bundle for basic EAV management

Frequently asked questions about Eav Bundle
Is msgphp/eav-bundle compatible with Laravel?
No. It is a Symfony bundle that relies on Symfony's kernel, DI container, compiler passes, and DoctrineBundle conventions, none of which map to Laravel's service-provider container. Installing it via Composer will not register it in a Laravel app. For Laravel you would need to rewrite or reimplement the EAV domain.
Can I use msgphp/eav-bundle with Laravel Eloquent?
Not directly. The bundle is built around Doctrine ORM entities, repositories, and the msgphp domain layer with commands and events, not Eloquent models. You could run Doctrine alongside Eloquent via laravel-doctrine/orm and hand-wire services, but that creates two ORMs, two identity maps, and cross-ORM transaction complexity. The recommended path is to port the EAV concepts to Eloquent, not the bundle.
How do I install msgphp/eav-bundle in a Laravel project?
You can run composer require msgphp/eav-bundle, but it will not function as intended. Laravel has no analogue for Symfony Bundle registration or compiler passes, so the bundle's services and Doctrine mappings stay inert. The package also expects the msgphp dependency graph and Symfony 4/5-era constraints that likely conflict with modern Laravel baselines. Treat installation as reference-only, not integration.
What Laravel and PHP versions does msgphp/eav-bundle support?
None officially. It is a Symfony bundle with no Laravel support matrix; its constraints are pinned to PHP 7.x-era, Symfony 4/5, and Doctrine ORM 2.x. Laravel 10/11 baselines with PHP 8.2+ and newer Doctrine sit outside its tested range, so transitive conflicts are likely. There is no maintainer triage for Laravel compatibility.
Does msgphp/eav-bundle require Doctrine ORM and Symfony?
Yes. The bundle assumes Doctrine ORM entities, mapping, and DoctrineBundle conventions, plus the msgphp/doctrine-bridge and msgphp/eav domain packages. It is not persistence-agnostic in practice. Without Doctrine and Symfony's DI wiring, the bundle contributes almost nothing runnable.
Is there a Laravel EAV package alternative to msgphp/eav-bundle?
There is no direct Laravel port of this bundle, so evaluate Laravel-native patterns instead. For a long-tail attribute model, a hybrid of promoted columns plus a JSON column with generated columns or functional indexes covers many needs. If you truly need runtime-defined attributes with filtering, faceting, and aggregation, consider a dedicated EAV table design or an external search index. The bundle is best used as a reference design.
Can I port msgphp/eav-bundle to Laravel?
The EAV domain classes are the reusable part, covering attribute and value separation plus repository boundaries, and they are small enough to reimplement. Porting means rebuilding persistence on Eloquent and re-creating validation, typing, tenancy, and i18n behavior yourself. At that point the bundle's Symfony wiring is discarded, so it contributes design inspiration rather than code. Plan for a rewrite, not a bridge.
Is msgphp/eav-bundle safe for production and actively maintained?
Not for production planning. It has 0 stars, 0 dependents, and the broader msgphp ecosystem is dormant, with no security triage, version bumps, or issue response. The MIT license is clean, so forking is legally fine, but you inherit maintenance of a multi-package graph. Treat it as abandoned.
Should I use JSON columns instead of EAV in Laravel?
Often yes. If the requirement is avoiding migrations rather than truly runtime-defined attributes discovered by tenants or admins, JSON columns with generated columns or functional indexes are simpler and cheaper. EAV is justified when users define attributes at runtime and need to filter, sort, facet, or aggregate on values. Cardinality and query patterns should drive the choice more than the bundle itself.
How do I test an EAV implementation in Laravel if I port msgphp/eav-bundle?
Test the Laravel-native implementation you build, not the Symfony bundle. Cover attribute definition, type validation, retyping and deletion behavior, tenant-scoped attributes, and query patterns such as filtering and sorting on values. Use database-level tests for the EAV or JSON schema because index behavior and constraint handling are where regressions appear. The bundle itself offers no Laravel test harness.
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.
jinas/dhivatar
store-doc/laravel-storage-driver
plus-it/laravel-translation-manager
diephp/perhaps
diephp/telegraph
osmaviation/spreadsheet
microsoft/fluentui-system-icons
mmccook/php-json-canonicalization-scheme
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console
pnscripts/filament-broadquill-lite
pnscripts/laravel-sentfold-lite
vleap/mx-sdk-laravel-internal
twidpay/utils
htetmyathlaing/scout-elasticsearch-driver
artisan-toolbox/front-awesome
ls/client-assistant
users-au/laravel-client
cgv/localized-resource