PHPackages                             wendelladriel/laravel-validated-dto - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Validation &amp; Sanitization](/categories/validation)
4. /
5. wendelladriel/laravel-validated-dto

ActiveLibrary[Validation &amp; Sanitization](/categories/validation)

wendelladriel/laravel-validated-dto
===================================

Data Transfer Objects with validation for Laravel applications

v4.6.0(2mo ago)759569.4k—0.1%46[1 issues](https://github.com/WendellAdriel/laravel-validated-dto/issues)12MITPHPPHP ^8.2CI passing

Since Dec 9Pushed 2mo ago4 watchersCompare

[ Source](https://github.com/WendellAdriel/laravel-validated-dto)[ Packagist](https://packagist.org/packages/wendelladriel/laravel-validated-dto)[ Fund](https://www.paypal.me/wendelladriel)[ GitHub Sponsors](https://github.com/WendellAdriel)[ RSS](/packages/wendelladriel-laravel-validated-dto/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (10)Dependencies (20)Versions (60)Used By (12)

 [![Validated DTO for Laravel](https://github.com/WendellAdriel/laravel-validated-dto/raw/main/art/laravel-validated-dto-banner.png)](https://github.com/WendellAdriel/laravel-validated-dto/raw/main/art/laravel-validated-dto-banner.png)Validated DTO for Laravel
=========================

[](#validated-dto-for-laravel)

 Data Transfer Objects with validation for Laravel applications

 [![Packagist](https://camo.githubusercontent.com/e24117ba566b88cd90d840f2c1e958dcdf319bc69f79da17a527ac310adf4bb2/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f57656e64656c6c41647269656c2f6c61726176656c2d76616c6964617465642d64746f2e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/WendellAdriel/laravel-validated-dto) [![Packagist Downloads](https://camo.githubusercontent.com/5f7898d327beadd1df6411a164cc14b2cb55b732751138d356680eb97a54d7f1/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f57656e64656c6c41647269656c2f6c61726176656c2d76616c6964617465642d64746f2e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/WendellAdriel/laravel-validated-dto) [![PHP from Packagist](https://camo.githubusercontent.com/6f0b7c8a1d3f59274e7317d7bcc93d8ab3716c0fbcbd502a8d99e6687f261c68/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f7068702d762f57656e64656c6c41647269656c2f6c61726176656c2d76616c6964617465642d64746f2e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/WendellAdriel/laravel-validated-dto) [![Laravel Version](https://camo.githubusercontent.com/8c36abcaca710d45b0aa7b48f2f7acc2ba151c2317b2790668adfd7c9554cd91/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c61726176656c2d31312e782c25323031322e782c25323031332e782d627269676874677265656e2e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/WendellAdriel/laravel-validated-dto) [![GitHub Workflow Status (main)](https://camo.githubusercontent.com/8414ffab8d4e9dcc5e655d3c909b3c2b4b2a348df6d46f88cf4a4841e0c1ee2d/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f57656e64656c6c41647269656c2f6c61726176656c2d76616c6964617465642d64746f2f74657374732e796d6c3f6272616e63683d6d61696e266c6162656c3d5465737473267374796c653d666c61742d737175617265) ](https://github.com/WendellAdriel/laravel-validated-dto/actions)

**Data Transfer Objects (DTOs)** are objects that are used to transfer data between systems. **DTOs** are typically used in applications to provide a simple, consistent format for transferring data between different parts of the application, such as **between the user interface and the business logic**.

This package provides a base **DTO Class** that can **validate** the data when creating a **DTO**. But why should we do this instead of using the standard **Request** validation?

Imagine that now you want to do the same action that you do in an endpoint on a **CLI** command per example. If your validation is linked to the Request you'll have to implement the same validation again.

With this package you **define the validation once** and can **reuse it where you need**, making your application more **maintainable** and **decoupled**.

Documentation
-------------

[](#documentation)

[![Docs Button](https://camo.githubusercontent.com/0497395fb34c36b8dfa14a637f316059327ef8e5f415ae8766dfd514894c9609/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f576562736974652d3064423831363f7374796c653d666f722d7468652d6261646765266c6f676f436f6c6f723d7768697465266c6f676f3d476974426f6f6b)](https://wendell-adriel.gitbook.io/laravel-validated-dto/) [![DocsRepo Button](https://camo.githubusercontent.com/e9e9240ac12afd5c6b415fdfaa44f425589f2c041a1c15193a8419ddb6910bd2/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5265706f7369746f72792d3338383446463f7374796c653d666f722d7468652d6261646765266c6f676f436f6c6f723d7768697465266c6f676f3d476974426f6f6b)](https://github.com/WendellAdriel/laravel-validated-dto-docs)

Installation
------------

[](#installation)

```
composer require wendelladriel/laravel-validated-dto
```

Credits
-------

[](#credits)

- [Wendell Adriel](https://github.com/WendellAdriel)
- [All Contributors](../../contributors)

Contributing
------------

[](#contributing)

Check the **[Contributing Guide](CONTRIBUTING.md)**.

###  Health Score

66

—

FairBetter than 99% of packages

Maintenance86

Actively maintained with recent releases

Popularity60

Solid adoption and visibility

Community35

Small or concentrated contributor base

Maturity72

Established project with proven stability

 Bus Factor1

Top contributor holds 75.1% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~20 days

Total

58

Last Release

68d ago

Major Versions

v1.1.2 → v2.0.02022-12-14

v2.11.1 → v3.0.02023-09-06

3.x-dev → v4.0.02025-02-26

PHP version history (3 changes)v1.0.0PHP ^8.0

v3.0.0PHP ^8.1

v4.0.0PHP ^8.2

### Community

Maintainers

![](https://www.gravatar.com/avatar/565cea386dcfc4df5188a338113624866e65e4b31b209a7a99bb6c4c272e8731?d=identicon)[wendell\_adriel](/maintainers/wendell_adriel)

---

Top Contributors

[![WendellAdriel](https://avatars.githubusercontent.com/u/11641518?v=4)](https://github.com/WendellAdriel "WendellAdriel (169 commits)")[![dansysanalyst](https://avatars.githubusercontent.com/u/79267265?v=4)](https://github.com/dansysanalyst "dansysanalyst (7 commits)")[![benbjurstrom](https://avatars.githubusercontent.com/u/12499093?v=4)](https://github.com/benbjurstrom "benbjurstrom (7 commits)")[![emrancu](https://avatars.githubusercontent.com/u/11002290?v=4)](https://github.com/emrancu "emrancu (7 commits)")[![felixbessler](https://avatars.githubusercontent.com/u/65896926?v=4)](https://github.com/felixbessler "felixbessler (6 commits)")[![bnzo](https://avatars.githubusercontent.com/u/17174973?v=4)](https://github.com/bnzo "bnzo (5 commits)")[![UendelC](https://avatars.githubusercontent.com/u/21681869?v=4)](https://github.com/UendelC "UendelC (5 commits)")[![DavoodGhanbarpour](https://avatars.githubusercontent.com/u/57192665?v=4)](https://github.com/DavoodGhanbarpour "DavoodGhanbarpour (5 commits)")[![patriziotomato](https://avatars.githubusercontent.com/u/544502?v=4)](https://github.com/patriziotomato "patriziotomato (2 commits)")[![vadymtsots](https://avatars.githubusercontent.com/u/73906449?v=4)](https://github.com/vadymtsots "vadymtsots (2 commits)")[![mark-rady-intcore](https://avatars.githubusercontent.com/u/91468983?v=4)](https://github.com/mark-rady-intcore "mark-rady-intcore (1 commits)")[![MasterFelX](https://avatars.githubusercontent.com/u/35193620?v=4)](https://github.com/MasterFelX "MasterFelX (1 commits)")[![ricazao](https://avatars.githubusercontent.com/u/7110502?v=4)](https://github.com/ricazao "ricazao (1 commits)")[![scottzirkel](https://avatars.githubusercontent.com/u/1329131?v=4)](https://github.com/scottzirkel "scottzirkel (1 commits)")[![serogaq](https://avatars.githubusercontent.com/u/36307024?v=4)](https://github.com/serogaq "serogaq (1 commits)")[![simon-tma](https://avatars.githubusercontent.com/u/37322653?v=4)](https://github.com/simon-tma "simon-tma (1 commits)")[![IDTitanium](https://avatars.githubusercontent.com/u/34219909?v=4)](https://github.com/IDTitanium "IDTitanium (1 commits)")[![ljxheihei](https://avatars.githubusercontent.com/u/138198598?v=4)](https://github.com/ljxheihei "ljxheihei (1 commits)")[![jeffwhansen](https://avatars.githubusercontent.com/u/2449767?v=4)](https://github.com/jeffwhansen "jeffwhansen (1 commits)")[![ludoguenet](https://avatars.githubusercontent.com/u/36139526?v=4)](https://github.com/ludoguenet "ludoguenet (1 commits)")

---

Tags

data-transfer-objectdtolaravelvalidationlaravelvalidationdata-transfer-objectdto

###  Code Quality

TestsPest

Code StyleLaravel Pint

### Embed Badge

![Health badge](/badges/wendelladriel-laravel-validated-dto/health.svg)

```
[![Health](https://phpackages.com/badges/wendelladriel-laravel-validated-dto/health.svg)](https://phpackages.com/packages/wendelladriel-laravel-validated-dto)
```

###  Alternatives

[propaganistas/laravel-phone

Adds phone number functionality to Laravel based on Google's libphonenumber API.

3.0k35.7M107](/packages/propaganistas-laravel-phone)[proengsoft/laravel-jsvalidation

Validate forms transparently with Javascript reusing your Laravel Validation Rules, Messages, and FormRequest

1.1k2.3M49](/packages/proengsoft-laravel-jsvalidation)[roots/acorn

Framework for Roots WordPress projects built with Laravel components.

9682.1M97](/packages/roots-acorn)[axlon/laravel-postal-code-validation

Worldwide postal code validation for Laravel and Lumen

3853.3M1](/packages/axlon-laravel-postal-code-validation)[laravel-validation-rules/credit-card

Validate credit card number, expiration date, cvc

2412.2M5](/packages/laravel-validation-rules-credit-card)[galahad/laravel-addressing

Laravel package providing addressing functionality

70316.6k](/packages/galahad-laravel-addressing)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
