PHPackages                             monkeyscloud/monkeyslegion-validation - 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. monkeyscloud/monkeyslegion-validation

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

monkeyscloud/monkeyslegion-validation
=====================================

Attribute-driven DTO binding and validation layer for the MonkeysLegion framework.

1.0.1(5mo ago)11.0k↑142.9%2MITPHPPHP ^8.4

Since Jul 23Pushed 5mo ago1 watchersCompare

[ Source](https://github.com/MonkeysCloud/MonkeysLegion-Validation)[ Packagist](https://packagist.org/packages/monkeyscloud/monkeyslegion-validation)[ RSS](/packages/monkeyscloud-monkeyslegion-validation/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (1)Dependencies (6)Versions (3)Used By (2)

MonkeysLegion Validation
========================

[](#monkeyslegionvalidation)

Attribute‑driven **DTO binding &amp; validation layer** for the [MonkeysLegion](https://github.com/monkeyscloud) PHP framework.

---

✨ Features
----------

[](#features)

- **Attribute‑based constraints** – ship with `#[NotBlank]`, `#[Email]`, `#[Length]` (extend in minutes)
- **Automatic binding** – JSON body *and* query parameters → strongly‑typed DTO
- **PSR‑15 middleware** – intercepts the request, validates, and returns a *400 JSON* error payload if needed
- **Fail‑fast &amp; zero‑magic** – no doctrine/metadata proxies, only native PHP reflection
- **Extensible** – write a new constraint attribute in &lt;10 LOC
- **Lean footprint** – depends only on PSR interfaces + Laminas Diactoros for JsonResponse

---

🛠 Requirements
--------------

[](#requirements)

MinimumPHP**8.4**Extensions`ext-json`, `ext-mbstring`Composer deps`psr/http-message`, `psr/http-server-handler`, `psr/http-server-middleware`, `laminas/laminas-diactoros`> All other MonkeysLegion packages (`core`, `di`, …) are pulled in transitively.

---

🚀 Installation
--------------

[](#installation)

```
composer require monkeyscloud/monkeyslegion-validation:^1.0@dev
```

Ensure your root *composer.json* allows dev stability while we are pre‑1.0:

```
{
  "minimum-stability": "dev",
  "prefer-stable": true
}
```

---

⚡ Quick Start
-------------

[](#quickstart)

### 1. Define a DTO

[](#1-define-a-dto)

```
