Weave Code
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

Data Transfer Object Laravel Package

spatie/data-transfer-object

PHP 8+ data transfer objects with “batteries included”: map and cast input arrays into typed DTOs, validate via attributes, and handle nested objects/collections. Note: package is deprecated; consider spatie/laravel-data or cuyz/valinor.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • This package is officially deprecated and archived; PMs should never adopt it for new features and prioritize migration of existing implementations to actively maintained alternatives like spatie/laravel-data or valinor.
  • Key decisions involve eliminating technical debt from unmaintained dependencies, reducing security risks (no patches for vulnerabilities), and aligning with Laravel ecosystem standards where supported tools exist.
  • Prioritize migration planning for legacy systems using this package to avoid future compatibility issues with PHP/Laravel updates.

When to Consider This Package

  • Never for new projects – always choose spatie/laravel-data (Laravel-specific) or valinor (general PHP) instead.
  • Only consider for short-term legacy maintenance where migration is temporarily blocked, but only with a concrete migration timeline (e.g., "migrate within 3 months").
  • Avoid entirely if your project uses PHP ≥8.0 (the package only supports legacy versions), or if security compliance is required (archived packages lack vulnerability fixes).

How to Pitch It (Stakeholders)

"This package is officially archived and no longer maintained, exposing us to unpatched security risks and compatibility issues. We recommend migrating to spatie/laravel-data (for Laravel projects) or valinor (for broader PHP use) – both are actively supported with modern features, security updates, and community backing. Delaying migration increases technical debt and operational risk; we propose a 60-day plan to transition all existing usages to these alternatives."

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.
davejamesmiller/laravel-breadcrumbs
artisanry/parsedown
christhompsontldr/phpsdk
enqueue/dsn
bunny/bunny
enqueue/test
enqueue/null
enqueue/amqp-tools
milesj/emojibase
bower-asset/punycode
bower-asset/inputmask
bower-asset/jquery
bower-asset/yii2-pjax
laravel/nova
spatie/laravel-mailcoach
spatie/laravel-superseeder
laravel/liferaft
nst/json-test-suite
danielmiessler/sec-lists
jackalope/jackalope-transport