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

Vie Bundle Laravel Package

liip/vie-bundle

Symfony bundle that integrates VIE.js and Create.js for in-place, semantic editing of RDFa-annotated content. It provides server-side support for loading and persisting editable resources, so front-end editors can work directly with your application's data.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit

liip/vie-bundle is a Symfony 2-era bundle built to wire the VIE (Vienna IKS Editables) / Create.js JavaScript editing stack to a PHP backend through CreatePHP, RDFa/JSON-LD mapping, and typically PHPCR-ODM/Jackalope persistence. That describes a different runtime paradigm than Laravel, not merely a package with friction. There is no service provider, no package auto-discovery, no publishable config, no facade, and no Eloquent or Query Builder adapter. Beyond framework mechanics, the bundle assumes a content repository (PHPCR/JCR) rather than a relational database, and a front end driven by a JavaScript library that is itself defunct.

The repository is explicitly marked [DEPRECATED] in favor of SymfonyCmfCreateBundle, and that successor is also dormant. So the "recommended upgrade path" does not restore viability — it is a lateral move inside a dead ecosystem. The only honest architectural characterization is: reference implementation, not a candidate dependency.

Integration feasibility

Direct composer require is effectively non-viable. Constraint resolution will collide with the symfony/* components Laravel pins (http-foundation, console, finder, process, var-dumper), and the transitive tree — CreatePHP/CreateBundle, PHPCR, Jackalope, Midgard RDFa — is uniformly abandoned. A modern PHP 8.x install will likely need --ignore-platform-reqs at best, and will still hit PHP 5.x-era type and deprecation failures. Realistically there are two paths: (a) treat the repo as a design reference for the Create.js JSON write contract and reimplement a thin Laravel-native equivalent, or (b) fork and own it, which is a full internal-product commitment for a feature most teams no longer want. Feasibility for (a) is moderate and cheap; for (b) it is poor and expensive.

Technical risk

High and asymmetric — the upside is a niche authoring UX, the downside is an orphaned subsystem. Zero dependents on Packagist means zero community validation, zero shared bug surface, and no realistic pool of engineers who have operated it. Security posture is unmaintained: archived repositories receive no advisories and no patches, so a CVE in the transitive tree has no remediation path except our own fork. The client-side half of the contract (VIE/Create.js) is independently abandoned, so even a flawless backend port leaves a browser-compatibility gap that must be filled by a modern editor anyway — at which point the bundle's value collapses to its wire format.

Key questions

  • What is the real requirement: inline WYSIWYG editing over RDFa-annotated markup, or simply a CMS with structured content write APIs? The former is rare today; the latter has many maintained options.
  • Do we have an existing Symfony CMF / PHPCR estate we must interoperate with, or is this greenfield Laravel? The answer flips the recommendation entirely.
  • Does any live system depend on the Create.js/RDFa wire format such that protocol compatibility is a hard constraint?
  • Is schema.org/JSON-LD output a separate, independently satisfiable requirement? If yes, the last argument for this package disappears.
  • Who owns the fork if we adopt? Name the engineer before approving, and confirm they are still here in twelve months.

Integration Approach

Stack fit

Poor as a dependency, workable as a blueprint. The salvageable assets are narrow but real: the JSON write payload shape, the RDFa-to-type mapping conventions, and the edit-session semantics (load resource → edit in place → PUT back). Those translate cleanly into a Laravel-native ContentController with Form Requests, a Policy layer, and API Resources — a fraction of the effort of a port. The PHPCR persistence model does not translate; the Laravel equivalent is a normalized content_resources / content_attributes schema or a JSON column, chosen by query requirements.

Migration path

Two distinct paths, and the assessment must state which applies:

  • Existing Symfony consumer: do not stop at SymfonyCmfCreateBundle — that is a lateral move within a dead ecosystem. Migrate data first (PHPCR → relational or document store), then the API, then the editor. Editor last, because it is the most replaceable layer and the one with the most live options.
  • Greenfield Laravel: no migration at all. Build the write API natively and select a maintained editor (Tiptap/ProseMirror, Lexical, Editor.js) or a headless CMS, rather than reproducing VIE.

Compatibility

Assume none by default. Expect Symfony 2/3 component constraints conflicting with Laravel's pinned Symfony packages, PHP 8 type and deprecation failures, and PEAR-era code predating strict PSR-4. A 30-minute autoload and container smoke test will close the question faster than any design document. Verify against the target PHP version before scheduling any spike.

Sequencing

  1. Spike (1–2 days): confirm Composer resolution fails on the target stack; document the Create.js JSON contract from source so the reference value is captured before the repo is forgotten.
  2. Decision gate: confirm which requirement is real — semantic inline editing versus a structured content API.
  3. Design: specify the Laravel-native resource/edit API, persistence schema, and authorization model.
  4. Build: controller, policies, validation, serialization, tests.
  5. Front end: integrate a maintained editor; do not attempt VIE revival on any timeline.
  6. Decommission: if a Symfony instance exists, retire it on a dated plan with named owners, not indefinitely.

Operational Impact

Maintenance

Upstream maintenance is zero — archived, self-deprecated, no releases to upgrade to, no security release that will ever arrive. Any adoption means owning 100% of the code plus the abandoned transitive tree, including a JCR backend most platform teams do not want to operate. Budget this as an internal product with a named owner and a depreciation schedule, not as a dependency with a version pin.

Support

No vendor, no maintainers, no community, no dependents to consult, no Stack Overflow corpus of any depth. Institutional knowledge must be written down deliberately because it cannot be hired. The contrast with a mainstream Laravel package — where recent issues and community answers substitute for formal support — is the whole argument in one line.

Scaling

The PHPCR/Jackalope persistence path is heavier than Eloquent for typical content workloads and adds an operational dependency (a JCR-compatible service) plus its own backup, monitoring, and upgrade burden. The binding constraint, though, is organizational: a system nobody can hire for does not scale past the tenure of the engineer who built it. The reimplementation path scales normally because it is ordinary Laravel — Eloquent, queues, Horizon, and a known hiring market.

Failure modes

  • Silent PHP-version breakage surfacing as fatal errors at deploy rather than in CI.
  • Composer constraint deadlock with Laravel's Symfony pins, blocking unrelated dependency updates across the whole application.
  • RDFa parsing edge cases on malformed markup, producing partial or incorrect writes with no upstream fix available.
  • Front-end abandonment: VIE/Create.js degrading on modern browsers with no replacement path, leaving authors with a broken form and no rollback.
  • Knowledge decay: six months untouched leaves the integration effectively unmaintainable, and the original engineer is the only route to recovery.

Ramp-up

High. Effective contribution requires RDFa, the Create.js protocol, PHPCR semantics, and Symfony 2 bundle conventions simultaneously — a rare combination in the current labor market and unrepresented among likely Laravel hires. Expect weeks before a new engineer is productive, versus hours for a native Laravel equivalent. That delta is the strongest single argument in the business case, because it recurs on every future hire.

Recommendation: Do not adopt. A 0.11 score, archived status, self-declared deprecation, and zero dependents are four independent signals pointing the same direction. Extract the JSON contract as documentation, build the write API natively in Laravel, and select a maintained editor. The only defensible use of this repository is as a historical reference during a migration away from it.

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.
payerurl/telegrambot-crypto-payment-instant-payout
dskripchenko/laravel-hybrid-search
riorizkyrainey/lara-ced
mehedimi/static-vel
zharp/zharp
nonsapiens/bigquery-model-sync
lgu-bayambang-ict-office/lgu-laravel-development-standards
andydefer/laravel-support
se7enxweb/flysystem
lampwick/laravel
jeslage/statamic-emojis
micahdshackelford/rmap-laravel
draftsmaninc/draftsman
square-bit/laravel-volition
himito/laravel-mailman
htinlynn/genius-helper
maco-studios/hephaestus
elmogy/larafast
xeviant/laravel-paystack
gorilladash/laravel-website-sdk