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

Sonatadtomodelmanager Laravel Package

jarjobs/sonatadtomodelmanager

Provides a clean bridge between Sonata Admin and Model Manager: expose admin-managed entities as model-manager resources, keep configuration in sync, and streamline CRUD workflows. Reuse your existing admin setup while managing models consistently across Symfony/PHP applications.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Build vs. buy for admin/back-office CRUD. This package exists to solve one narrow seam: binding Sonata Admin forms to a DTO instead of directly to a Doctrine entity. The decision it informs is whether we invest engineering time hand-rolling that mapping layer or adopt an existing one. Note that "buy" here costs nothing in license fees and everything in ownership risk — the real comparison is adopt vs. copy the pattern.
  • Whether DTO-in-admin is worth doing at all. If the roadmap involves decoupling back-office forms from domain models — validation isolation, partial updates, forms that assemble data from multiple entities, protecting entities from form-shaped mutation — this package is a ready-made implementation of that pattern and evidence that the need is a recognized Sonata pain point. If the roadmap does not include that decoupling, this package is irrelevant and the decision is a fast "no."
  • Entity-refactor sequencing. Teams carrying bloated entities (form-only fields, lifecycle callbacks, validation groups tangled with persistence) can use a DTO seam to freeze entity churn while cleaning up admin UX. This supports a sequencing call: DTO layer first, entity refactor later — or the reverse.
  • Dependency risk posture. Zero stars, zero dependents, individual namespace, no visible adoption. That is a direct input into any "may we take a dependency here?" decision, and into whether this belongs anywhere near a supported product surface versus internal-only tooling.
  • Stack-fit gating. Despite the brief framing it as a Laravel/PHP package, the description says Symfony Bundle and Sonata Admin. If our codebase is Laravel, the correct product decision is to rule it out before spending any evaluation budget — no spike, no proof of concept.
  • Plausible use cases where it earns a place: a single admin form assembling data from multiple entities; an admin workflow needing a validated, immutable payload before persistence; forms where the entity must never be hydrated directly from request input; internal-only admin panels where a small, forkable dependency is acceptable.

When to Consider This Package

Consider it only when all of these hold:

  • The application is Symfony with Sonata Admin already in production. This is not a Laravel package and does not apply to a Laravel stack — rule it out immediately if that is the target.
  • The team has deliberately decided on the DTO-in-admin pattern and wants a starting binding rather than a blank page.
  • Scope is internal back-office tooling, where a low-adoption dependency is tolerable.
  • Someone on the team can read, and if needed fork and vendor the code. Assume from day one that we own it.
  • Symfony, Sonata Admin, PHP, and Doctrine version constraints are verified against our platform. Admin bundles are tightly coupled to framework majors; do this before planning, not after.

Look elsewhere when:

  • We are on Laravel, or Symfony without Sonata Admin — the package is irrelevant by construction.
  • We need a supported vendor with SLAs, security responsiveness, or a predictable release cadence. Zero stars and zero dependents means effectively no community backstop; abandonment is the base case, not the tail risk.
  • The requirement is broader than Sonata forms — API DTOs, CQRS command objects, general serialization. Symfony Form data mappers, API Platform's DTO support, or a mainstream mapper covers those with maintenance guarantees.
  • The admin surface is customer-facing or security-sensitive, where an unmaintained dependency in the request-handling path is hard to defend.
  • The DTO seam is trivial for our domain — a handful of forms may not justify any dependency at all.

How to Pitch It (Stakeholders)

For executives: This is a small, unmaintained open-source helper for one specific pattern inside Symfony's Sonata admin framework. It is not a Laravel package, and it has no measurable adoption — no stars, no dependent projects, no supported vendor behind it. The recommendation is not to adopt it as a strategic dependency. Its value to us is as a reference implementation: it confirms that decoupling admin forms from database entities is an established practice, and it gives engineering a cheap starting point to copy or fork if we decide that decoupling is worth doing. Any use is internal-tooling-only, and we should budget for owning the code ourselves.

For engineering: The package provides a DTO binding layer for Sonata Admin form data, so submitted input lands in a transfer object rather than hydrating the entity directly. That buys validation isolation, safer partial updates, and cleaner multi-source forms. The trade-offs are concrete: unmaintained, single-namespace provenance, zero dependents, and tight coupling to specific Sonata/Symfony versions at exactly the integration points that tend to change across majors. The approach we would evaluate: read the source and fork it in an afternoon, or reimplement the mapping in-house — likely a few hundred lines given our form count. Run it against one low-risk admin on a spike branch, compare the diff to a hand-rolled DTO plus data mapper, and hold a decision gate before any broader rollout.

Recommendation: Rule out for any Laravel context. For Symfony/Sonata shops, treat it as a pattern reference rather than a dependency. Revisit only if we commit to DTO-based admin forms and want to skip writing the first version — and even then, vendor the code into our repository rather than pulling it from Packagist, with a named internal maintainer and an exit plan recorded up front.

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.
skyraptor/chatter
edlugz/sasapay
abbasudo/artisan-route
mirvan/ippanel
ignibyte/aic-framework
glavweb/data-schema-bundle
glavweb/datagrid-bundle
tacticmedia/scim-server
uni-method/frame
neika-ai/sdk
adachsoft/php-code-style
pharaonic/laravel-notification-dependencies
beautinow/translug
dev-brainiac/bot-cloaked
octoberrain/html
octoberrain/extension
octoberrain/exception
octoberrain/contracts
adachsoft/api-version-bundle
cgv/localized-resource