unite-cms/collection-field-bundle
A Unite CMS bundle that adds a collection field type for defining and managing structured collections of content directly within Unite CMS schemas, entries, and templates. It helps editors organize related items in a consistent, reusable way.
Architecture fit
json column with a custom cast, nested-array validation rules, and a repeater UI component in Filament/Nova). The idea transfers; the implementation does not.Integration feasibility
composer.json declare?Technical risk
High. The risk is concentrated in the schema/persistence layer, where breakage is most expensive. An unmaintained dependency that defines stored content shape creates a long-tailed migration liability, and nested/repeatable fields amplify both payload size and migration complexity.
Stack fit
Poor to nil for a Laravel monolith. The only coherent topology is:
Laravel app ◄── GraphQL/HTTP ──► Unite CMS (with this bundle)
i.e. the CMS becomes a headless content service and Laravel owns everything else.
Migration path
composer.lock, and add contract tests around the GraphQL queries the Laravel app issues. Wrap CMS access in a thin content-client interface so the backend is swappable.json column, an AsCollection/custom cast, FormRequest rules for nested arrays, and a repeatable form component. Days of work, no new runtime, no new vendor.Compatibility
Gate everything on PHP version, Symfony LTS, and Unite CMS major. Verify composer.json constraints before committing to a spike. Treat the CMS as a black box behind an interface to contain version drift.
Sequencing
Maintenance
You inherit the code. Zero stars, zero dependents, and no visible release cadence mean you are the de facto maintainer for any PHP upgrade or security issue. Budget recurring fork-maintenance time, not a one-off integration cost.
Support
No vendor, no community, no SLA. Knowledge must be written down; a single engineer holding the CMS internals is a real operational hazard.
Scaling
Repeatable fields inflate row size and GraphQL response size. Watch payload growth, query depth/complexity limits, and N+1 behaviour on nested resolution. A JSON-blob storage model keeps writes simple but blocks indexing and filtering on nested values — a problem the moment anyone wants to query inside a collection.
Failure modes
Ramp-up
A Laravel team needs Symfony bundle conventions (DI compiler passes, tagged services, configuration trees) plus Unite CMS's field-type and GraphQL extension model. Realistically 1–2 weeks before productive work, more for the CMS core. That is a significant multiple of the few days required to build the equivalent natively.
Recommendation: do not adopt. A score of 0 with 0 dependents is the signal, and the Symfony/Laravel mismatch makes the cost asymmetric — you pay integration and ownership costs for a feature Laravel can express in an afternoon.
How can I help you explore Laravel packages today?