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

Mapping Connector Bundle Laravel Package

nicolas-souffleur/mapping-connector-bundle

A Symfony bundle for wiring configurable mapping definitions between source and target data structures, so you can transform arrays, objects, and DTOs through reusable connector mappings instead of hand-written conversion code.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit — fundamental mismatch to validate first. Despite being a PHP package, this is not a Laravel package: it is a Symfony bundle built as an Akeneo PIM connector (readers/processors/writers registered as Akeneo import/export jobs). It cannot be composer require'd into a Laravel application and used as a library. Its value to a Laravel-based stack is limited to reference material — the column-to-attribute mapping model and CSV generation approach — not the runtime code.

For an organisation already running Akeneo, the fit is much better: it extends the native connector framework in the way Akeneo intends, so it slots into the existing job/import-profile model rather than fighting it.

Integration feasibility — low, and version-gated. The last release was 2019-02-21, which places it in the Akeneo 2.x/3.x, PHP 7.x, Symfony 3.4/4.x era. Any current Akeneo install (5.x–7.x, PHP 8.1+) will almost certainly fail Composer dependency resolution on Symfony, Doctrine, or Akeneo's own bundle constraints. Zero dependents and 11 stars mean the compatibility matrix has never been exercised by anyone but the author.

Technical risk — high across the board.

Risk Assessment
Abandonment Single maintainer, no release in ~6 years, no evidence of active triage
Security No patch cadence; transitive Symfony/PHP 7 dependencies carry known CVEs
Correctness No dependents implies no production validation; no visible test suite or CI
Lock-in Ties the solution to a specific Akeneo major version, complicating PIM upgrades
Scope CSV-centric mapping; unclear coverage of scopable/locale-specific values, metric units, reference data, and variant axes — the exact areas where Akeneo mapping usually breaks

Key questions to resolve before any commitment:

  • Which Akeneo version is the target, and does composer.json resolve against it in a throwaway sandbox?
  • Is our integration surface genuinely CSV, or is CSV a proxy for the Akeneo API? If we need API-level sync, this package does not address it.
  • Which attribute types must be mapped — text, metric, price, reference data, asset, variant axes, localisable/scopable? The package's coverage is unknown and must be proven per type.
  • Who owns the code if we adopt it — do we have a PHP/Symfony engineer willing to fork and maintain it permanently?
  • Does the mapping need to be bidirectional, and is the mapping definition something business users must edit or developers only?

Integration Approach

Stack fit. Two distinct paths, and the decision hinges on whether an Akeneo instance exists.

  • Laravel-only stack: do not integrate. Treat the repository as a design reference and reimplement the mapping layer natively (a config-driven column-to-attribute map plus a CSV writer). The domain logic is not complex; the bundle's overhead is Akeneo plumbing we would not use.
  • Akeneo-adjacent stack: viable only after a version-compatibility spike. If it compiles, fork it into our own namespace immediately — never depend on the upstream repository directly.

Migration path (adopt-as-fork).

  1. Sandbox Akeneo instance at the target version; attempt Composer resolution against a fork.
  2. If resolution fails, downgrade scope: port the mapping configuration schema and CSV writer into an Akeneo-native custom connector bundle we own.
  3. If resolution succeeds, audit and pin transitive dependencies, add a minimal test suite covering each attribute type we use, and publish internally.
  4. Retire the fork only when a first-party connector replaces it.

Compatibility. Expect to spend one to two days just establishing the constraint surface. Treat any successful resolution as accidental rather than guaranteed, and record the exact lockfile — future Akeneo upgrades will re-open this question every time.

Sequencing. Put this behind a timeboxed spike (2–3 days) with a hard go/no-go. Do not sequence it ahead of the mapping requirements definition, because the attribute-type coverage question determines feasibility more than the package's technical state does. If the spike fails, the fallback — a small internal mapping service — is not much more work than the integration and carries none of the abandonment risk.

Operational Impact

Maintenance — we become the maintainers on day one. There is no upstream roadmap and no realistic prospect of one. Budget permanent ownership: dependency patching, Akeneo upgrade compatibility, and bug fixes. A reasonable planning figure is a low but non-zero ongoing allocation (roughly 1–3 days per quarter in steady state, spiking to 1–2 weeks at every Akeneo major upgrade).

Support. None commercially. Community support is a single GitHub issue tracker with an inactive maintainer; internal escalation paths must be defined before adoption, not after an incident.

Scaling. The design is batch CSV import/export within Akeneo's job framework. Concerns to validate with a representative catalogue (say 50k–100k SKUs, multi-channel, multi-locale): whether the reader streams or loads into memory, memory ceiling during mapping, and job duration/timeout behaviour. There is no published performance evidence, so this must be load-tested rather than assumed.

Failure modes to instrument for.

  • Silent mapping drift — an attribute renamed or removed in Akeneo produces empty columns rather than errors. Needs explicit post-import validation.
  • Scope/locale loss — values written to the wrong channel or locale, which is silent and corrupting.
  • Dependency breakage — an unrelated Akeneo or PHP upgrade makes the fork unresolvable, blocking deploys.
  • Abandonment cliff — no upstream fix if a defect is found; our fork is the only remedy.
  • Partial-failure recovery — behaviour when a job dies mid-batch; unclear idempotency and rollback semantics.

Ramp-up. An engineer fluent in Symfony and Akeneo's connector architecture needs roughly one to two weeks to be productive in this codebase; add two to three weeks for someone learning Akeneo's attribute model (families, scopable/localisable semantics, variant axes, reference data) from scratch. Document the mapping configuration format early — it is the artefact most likely to become tribal knowledge.

Recommendation. Do not adopt as a runtime dependency for a Laravel-centric stack; the fit is wrong and the maintenance burden is unshared. For an Akeneo-centric stack, run the timeboxed compatibility spike, and if it passes, fork with an owner assigned and a test suite added. In both cases the durable value here is the mapping concept, not the code.

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.
htinlynn/genius-helper
maco-studios/hephaestus
elmogy/larafast
xeviant/laravel-paystack
gorilladash/laravel-website-sdk
martialbe/flysystem-oss
chondal/3312client
jeroen-g/flickr
opscale-co/nova-genbi
itsjustvita/laravel-retention
tequilarapido/trackit
gregsphotography/site-builder-filament
cabaoctavio/laravel-query-log
gregsphotography/site-builder-components
io-digital/clickatell
snowsoft/laravel-admin
oxygen/auth
relicsoftware/barakah-payment-gateway
tobya/work-with-composer
equipc/laravel-email-validator