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

Akeneo Extension Laravel Package

textmaster/akeneo-extension

The TextMaster extension for Akeneo integrates professional translation services into your PIM workflow, so teams can send product content for localization and receive translated content back in Akeneo, simplifying multilingual catalog management and reducing manual handoffs.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

What this actually is. textmaster/akeneo-extension is not a Laravel package — it is an Akeneo PIM extension (Symfony bundle, Doctrine-backed). That distinction matters for every downstream decision: it is installed into an Akeneo instance, versioned against Akeneo's release train, and inherits Akeneo's upgrade cadence rather than the Laravel ecosystem's. Any plan that treats this as a drop-in Composer dependency alongside Laravel services is mis-scoped.

Architecture fit. The extension is a thin connector: it serializes selected product attributes, pushes them to TextMaster as a translation project, polls for status, and writes finished translations back into Akeneo attributes per locale/channel. That is the correct shape for the job — it keeps the translation workflow inside the PIM and avoids a side-channel spreadsheet/export process. Fit is good if the organization already runs Akeneo and already buys professional translation. Fit is poor if translation volume is low, one-off, or handled by an existing language service provider (LSP) with its own portal.

Integration feasibility. Low-to-moderate, gated almost entirely by version compatibility. Release branch v4.0.2 (2021-09-01) targets the Akeneo 4.x era. Current Akeneo releases are several majors ahead, and PHP/Symfony dependency constraints will likely conflict before a single line of configuration is written. Treat "does it install and boot cleanly on our Akeneo version?" as the first gate, not the last. If it installs, the feature surface (credentials, attribute/locale selection, project create, status poll, sync-back) is well within normal extension behavior.

Technical risk.

  • Staleness (high). ~4 years since last release against an actively maintained host platform. Unmaintained extensions break on host upgrades and on vendor API changes, usually silently.
  • Adoption signal (high). Two stars is not a community; it is effectively a vendor-published artifact with no external users exercising it. Assume no bug reports, no third-party patches, no security review.
  • License clarity (high). NOASSERTION means GitHub could not classify the license. You do not have a confirmed right to fork, patch, or redistribute. If the plan is "we'll maintain our own fork," that plan is blocked pending legal review of the actual LICENSE file or a written grant from TextMaster.
  • Commodity-vendor coupling (medium). The extension hard-wires TextMaster as the translation backend. Switching LSPs means replacing the connector, not reconfiguring it. Negotiating leverage is reduced.
  • Data egress (medium). Product content — potentially embargoed/pre-launch catalog data — leaves your infrastructure. DPA, data residency, and retention terms are procurement items, not engineering ones.
  • The v4.0.2 change itself (low, but not zero). Making created_at/updated_at nullable in the Doctrine mapping removes the assumption that every translation-project record carries a creation timestamp. For a billable artifact, that is the wrong default: translation orders drive invoices, and per-order timestamps are your dispute evidence. It is a convenience for backfilling imported/staged records, but if it is applied globally it quietly weakens the audit trail on spend.

Data provenance caveat. The supplied assessment-pm.md and assessment-tpm.md describe a generic Doctrine nullable-timestamp patch and never mention Akeneo, TextMaster, or translation at all. They read as artifacts for a different package. Do not let them into a decision record; the only reliable source material here is the description and the v4.0.2 note.

Key questions.

  • Which Akeneo edition and version (CE vs. EE, 4.x/5.x/6.x/7.x) are we on, and does the extension install and boot against it without dependency overrides?
  • Is there a newer branch than v4.0.2, and is the repository still accepting issues/PRs, or is it archived in all but name?
  • What exactly is the license? Can we fork, patch, and run it internally without redistribution concerns?
  • Does TextMaster offer a supported REST API with a published SLA, and is this extension the vendor's sanctioned integration or an abandoned sample?
  • Are translation orders idempotent? If a sync or retry re-sends a batch, do we get duplicate billable projects?
  • Which attribute types are supported (text, textarea, media/asset metadata) and which are silently skipped?
  • Does sync-back overwrite values without a diff/review step, and is there a rollback path?
  • What are TextMaster's data processing, retention, and sub-processor terms?
  • Is there a commercial support contract available for the extension, and at what cost?

Integration Approach

Stack fit. Valid only inside an Akeneo PIM. It is a Symfony bundle with Doctrine entities and Akeneo-specific extension points (attribute types, locale/channel context, job/mass-edit integration is unclear). It brings its own tables for project/translation state. It does not integrate with Laravel services, queues, or Eloquent, and should not be positioned as doing so.

Build vs. buy. Because the package is stale and license-ambiguous, the realistic options are:

  1. Adopt as-is — viable only if the install gate passes and TextMaster confirms the connector is supported.
  2. Fork and maintain — plausible, but only after license clearance; budget ongoing owner time for Akeneo major upgrades. A connector of this scope (REST client, mapping config, status poll, write-back) is roughly 2–4 engineer-weeks to build in-house, which sets the ceiling on what fork maintenance is worth.
  3. Build in-house against TextMaster's API — best option if the extension fails the install gate or the license never clears. Removes the third-party code risk while keeping the vendor.
  4. Defer / use the LSP's own portal — correct if translation volume is low; manual export/import is cheaper than an unmaintained integration.

Recommend evaluating 1 and 2 in parallel with 3 scoped, and choosing at the end of the PoC rather than up front.

Migration path. None — this is a greenfield integration, not a data migration. The only migration-adjacent concern is the nullable-timestamp config: if existing translation records or reporting assume created_at, audit sort orders, date filters ("orders this month"), and any spend report before enabling nullability broadly. Prefer leaving it non-null for translation-order entities specifically.

Compatibility. Pin to an exact tag, resolve against the Akeneo version's locked dependency set, and verify PHP version support. The most likely blocker is a doctrine/* or symfony/* constraint conflict, not a runtime bug. Capture the resolved lock diff as evidence.

Sequencing.

  1. Legal clears the license (blocking; do this first, in parallel with everything else).
  2. Raise a TextMaster account, obtain sandbox/test credentials and confirm API terms + DPA.
  3. Stand up a throwaway Akeneo instance at our version, attempt install, record the exact dependency outcome.
  4. PoC one attribute class (single text attribute) × one target locale through the full round trip: send → order → status → retrieve → write-back.
  5. Failure-injection pass: expired credentials, rate limit, partial batch, retry-after-timeout, cancelled project, malformed locale.
  6. Scope decision: adopt, fork, build, or defer — with the PoC evidence, not the repo's README.
  7. Only then sequence production rollout behind an Akeneo staging-clone rehearsal.

Exit criteria. Do not proceed past step 3 if the extension cannot be made to install without forking Akeneo core dependencies. Do not proceed past step 4 if write-back cannot be gated behind a review step.

Operational Impact

Maintenance. This is the dominant cost, and it is recurring, not one-time. An unmaintained extension on a fast-moving host platform means every Akeneo upgrade is a re-validation of this connector, and the upgrade cannot proceed until it is. Assume a named owner and a per-upgrade budget. Plan the fork maintenance as a line item, not an exception.

Support. No community to lean on. Support is either a TextMaster commercial arrangement or internal. Confirm which before go-live; "the repo has two stars" is the answer to "who fixes this at 2am" and it is not a good answer. The nullable-timestamp change in v4.0.2 also means on-call may see translation records without creation timestamps — document that so it is not misread as corruption or data loss.

Scaling. The connector is not a throughput bottleneck in itself; translation is a human-latency process measured in days, so queue depth is a scheduling problem, not a performance one. What does scale badly: large catalogs sent as single projects (unwieldy status tracking, expensive partial failures), and polling-based status checks against the vendor API (rate limits, wasted cycles). Prefer batching by attribute-set/locale and confirm whether webhooks are supported.

Failure modes.

  • Duplicate billable orders from retries or re-sends without vendor-side idempotency — the highest-severity failure, and a finance issue, not an engineering one.
  • Silent sync gaps — projects complete at the vendor but never land in Akeneo, so channels ship stale content. Needs a reconciliation report, not just logs.
  • Write-back clobbering in-progress editorial work in the target locale; needs a diff/preview or a locked-attribute guard.
  • Locale/channel mapping mismatch — translations arrive in the wrong scope and appear to have "vanished."
  • Credential/API drift — vendor deprecates an auth flow and the extension fails at the next run, with no maintainer to patch it.
  • Upgrade freeze — the PIM cannot take a security patch because the extension won't resolve.

Ramp-up. Low for the business user (select attributes, pick locales, click order) — that is the package's main selling point and it is genuinely delivered. Moderate for the engineer who must own it: Akeneo extension architecture, Doctrine entity/timestamp semantics, and the vendor's API. Budget a short internal write-up covering the round-trip flow, the reconciliation check, and the nullability caveat; without it, institutional knowledge sits with whoever ran the PoC.

Net TPM position. Do not treat this as an approved dependency today. The capability is worth having, the specific artifact is not yet trustworthy: stale since 2021, no adoption, unclear license, unverified against current Akeneo. Run the license check and a time-boxed install-and-round-trip PoC concurrently; if either fails, build a small in-house connector against TextMaster's API instead — the scope is modest and the maintenance profile is far more predictable than inheriting an abandoned one.

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.
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
equipc/laravel-email-database-log
adedsec/nova-translated-labels
wazza/laravel-db-encryption
hokny/laravel-generator
vonsogt/backup
jengo/queues
jeremykenedy/laravel-observability
coleus/frame
thtg88/journalism
filagora/filagora-ai-forums