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

Layouts Ezplatform Tags Query Laravel Package

netgen/layouts-ezplatform-tags-query

Netgen Layouts eZ Platform Tags Query adds a custom query type for Netgen Layouts that lets you filter and display eZ Platform content by tags, making tag-based content listings easy to configure in your layouts.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit. This is a narrow-purpose Symfony bundle that plugs a custom query type into the Netgen Layouts query registry. It sits at the intersection of three components: Netgen Layouts (the layout/block engine), eZ Platform / Ibexa (the CMS), and Netgen Tags (a taxonomy bundle layered on top of eZ content). The package itself is a thin adapter — its job is to translate "tags selected in a Layouts block" into an eZ content query. Architecturally this is a natural extension-point fit: Layouts was designed around pluggable query types, so the package does not fight the framework. The coupling is the concern: it assumes a specific eZ Platform generation, a specific Netgen Tags schema, and a specific Layouts query API. Any of those moving independently breaks it.

Integration feasibility. Low-to-moderate effort if the stack precondition holds: eZ Platform (legacy 2.x/3.x era, pre-Ibexa 4 rebrand), Netgen Layouts already in production, and Netgen Tags already modeling the content taxonomy. In that scenario it is a Composer require plus bundle registration plus query configuration — days, not weeks. If any of those three are absent, the cost of adoption balloons because you are effectively adopting three interdependent packages to use one.

Technical risk. The dominant risks are lifecycle and license, not code complexity:

  • Version skew. The ezplatform naming and namespace convention predate the Ibexa rebrand. Ibexa 4+ changed content API surfaces and bundle naming; compatibility with modern Ibexa is unverified and likely non-trivial.
  • Abandonment signal. 6 stars, 0 dependents, a composite score of 0.06. This is effectively a single-consumer micro-package with no visible community. No dependents means no field-tested integration paths and no organic bug reports.
  • GPL-2.0. Copyleft licensing on a dependency is a real legal-review item for proprietary deployments. It is likely fine as an unmodified runtime dependency in a service context, but counsel should sign off before it enters a commercial build.
  • Blast radius. Small — a broken query type degrades specific Layouts blocks, not the whole site. That is the one risk-mitigating factor.

Key questions. (1) What eZ Platform / Ibexa version is actually targeted, and is it still supported upstream? (2) Which Netgen Layouts and Netgen Tags versions does the composer constraint allow? (3) Is GPL-2.0 acceptable to legal for our distribution model? (4) Do we already run Netgen Tags — if not, we are adopting a taxonomy layer just to get a query type, which inverts the value proposition. (5) Who forks it if it breaks — is Netgen's commercial support umbrella covering this, or is it community-only?

Integration Approach

Stack fit. Only fits a stack that is already all-in on the Netgen ecosystem: eZ Platform 2.x/3.x + Netgen Layouts + Netgen Tags. It is not a general-purpose tagging query — it is a glue package for one specific combination. Confirm the existing stack before scoping any work; if we are on Ibexa 4+, treat this as a candidate for replacement rather than integration.

Migration path. There is no meaningful migration path into this package — you either already have the three prerequisites or you don't. The real migration question is the reverse: what happens when we move off legacy eZ to Ibexa. Plan now for an exit — the tag→content query logic is a few hundred lines at most and can be reimplemented as a native Ibexa query type against the modern content repository if this package is not carried forward. Fork it under an internal namespace if needed; GPL-2.0 permits that but the derivative stays GPL, which may be worse than a clean reimplementation.

Compatibility. Pin aggressively. Lock the package, Netgen Layouts, Netgen Tags, and eZ Platform versions together in composer.json and treat any version bump across that set as a coordinated upgrade. Verify on a staging clone before touching production, specifically exercising: (a) a Layouts block bound to a tag query, (b) tag add/remove/rename propagation, (c) empty and multi-tag query edge cases.

Sequencing.

  1. Legal review of GPL-2.0 against our distribution model.
  2. Confirm Netgen Tags is installed, populated, and stable — this package is worthless without a real taxonomy.
  3. Confirm Netgen Layouts query-type extension mechanism works in our version (register a trivial no-op query first as a smoke test).
  4. Install the package, register the bundle, configure a single query and wire it to one non-critical block.
  5. Validate query correctness and performance against a representative content set before broader rollout.
  6. Document the internal fork/exit plan and assign an owner.

Operational Impact

Maintenance. Low day-to-day burden — the surface area is small and it rarely needs changes if the stack is frozen. The burden is strategic: no upstream activity means no security patches, no PHP version compatibility updates, and no fixes for upstream API drift. Budget for an internal owner and periodic fork-and-patch work. Treat it as vendored logic, not a maintained dependency.

Support. Community-only in practice. Netgen provides commercial support for the broader Layouts product, but a 6-star, 0-dependent add-on is unlikely to sit inside a paid support envelope unless explicitly contracted. Escalation path is GitHub issues against a low-traffic repo — unresponsive by default. Mitigate by keeping an internal engineer who can read the source; it is small enough to fully understand.

Scaling. Query performance is inherited from Netgen Tags' storage and the underlying eZ content query, not from this package. Watch for tag sets with high cardinality and blocks that query on every page render — caching at the Layouts block level is essential. The package adds negligible overhead itself.

Failure modes. (1) Upstream upgrade (eZ→Ibexa, Layouts major bump, Tags schema change) silently breaks the query type — symptom is empty or stale blocks, which is easy to miss. (2) Tag rename/delete leaves orphaned queries returning nothing. (3) Composer resolution failure when transitive constraints conflict, blocking unrelated dependency updates. (4) GPL contamination surprise if code is later extracted into a proprietary module. Each has a cheap mitigation: an integration test asserting block output, tag lifecycle checks, a pinned lockfile, and an up-front license ruling.

Ramp-up. Moderate for a small package because it requires literacy in three systems: the Layouts query plugin contract, the Netgen Tags data model, and the eZ content repository API. An engineer strong in Symfony and one of the three can onboard in roughly a week; someone new to all three needs two to three. Given the low adoption, expect no tutorials, no Stack Overflow answers, and no examples beyond the README — plan for source-reading as the primary learning mode, and capture that knowledge in an internal runbook so it is not single-person.

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.
laravel2580/idehelpers
delatbabel/viewpages
anavel/gettext
muhamadrezaar/highcharts
delatbabel/keylists
frankkessler/salesforce-laravel-oauth2-rest
anavel/foundation
wdmtech/enviricons
eii/laravel-captcha
muka/shape-reader
tdt/json
refinery29/php-cs-fixer-config
hotmeteor/eco-env
mvaliolahi/hydrate
wearede/tbcpay-php
parsnick/steak
thibaud-dauce/mattermost-php
multilinguals/apollo-client
antaresbr/collection
kr0lik/phpstan-rules