xrow/xrowvideo-bundle
xrow/xrowvideo-bundle is a Symfony bundle for integrating video functionality into eZ Platform/IBexa projects, providing video field types, content handling, and playback support to streamline embedding and managing video content within your CMS.
Start by adjusting expectations: xrow/xrowvideo-bundle is not a Laravel package. It is a deprecated eZ Publish 5 (eZ5) legacy bundle that registers the xrowVideo custom datatype for the eZ5 content model. There is no service provider for Laravel, no facade, no config file you can php artisan vendor:publish, and no HTTP/queue/Eloquent integration. A Laravel developer cannot "leverage" it day-to-day in a Laravel application — the only realistic audience is someone maintaining an eZ Publish 5 site that already stores xrowVideo content-class attributes.
If you are in that narrow situation, the first steps are:
composer.json and the bundle class first — confirm the required eZ Publish/Symfony version (this is Symfony 2.x-era eZ5, not eZ Platform/Ibexa).composer require xrow/xrowvideo-bundle inside the eZ5 project (not a Laravel project).ezpublish/EzPublishKernel.php (or app/AppKernel.php) if it is not auto-loaded.php ezpublish/console cache:clear and clear the legacy var/cache and var/<site>/cache.xrowVideo attribute exists and can be edited in the admin UI.First meaningful use case: rendering an existing xrowVideo attribute in an eZ5 template via the usual ez_... fetch/template operators, or reading it from a custom controller. If you have no eZ5 codebase, stop here — this package has nothing to offer a Laravel app.
The package follows eZ Publish extension conventions, not Laravel ones. The patterns you will actually touch are:
xrowVideo datatype definition, handler, and type converter. This is wired through legacy extension paths (extension/xrowvideo/...) and eZ INI/datatype configuration, not Laravel config.xrowVideo attribute on a content class, store video/embed metadata through the eZ object model, and render it in eZ templates. There is no Eloquent-style model; content is an eZ Content/ContentObjectAttribute tree..tpl files. If you want to expose the same field to a Laravel/API consumer, you must read it out of eZ (REST API, legacy stack, or direct DB) yourself.xrowVideo fields over an HTTP endpoint or nightly export, then normalize into a real Laravel model (Media/Video with a JSON column or dedicated table). Do not attempt to load this bundle into Laravel to get the data — extraction is the integration.xrowVideo as a source schema: dump attributes, map them to a Laravel video JSON column or a videos table with provider, url, embed_html, poster, then re-implement playback in Blade. This is the only "day-to-day leverage" that makes sense.var/cache produces silent "unknown datatype" behavior. Always clear both Symfony and legacy eZ caches after any change.var/log/ezpublish.log and Symfony logs; use eZDebug::writeDebug() in legacy code. Standard Laravel Log:: calls will not exist here.How can I help you explore Laravel packages today?