PHPackages                             aesonus/paladin - 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. aesonus/paladin

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

aesonus/paladin
===============

Validate method parameters based on their doc blocks

v2.0.1(7y ago)04561MITPHPPHP &gt;=5.6 || &gt;=7

Since Mar 23Pushed 5y agoCompare

[ Source](https://github.com/Aesonus/paladin)[ Packagist](https://packagist.org/packages/aesonus/paladin)[ RSS](/packages/aesonus-paladin/feed)WikiDiscussions master Synced 2mo ago

READMEChangelog (10)Dependencies (1)Versions (23)Used By (1)

Paladin
=======

[](#paladin)

This package allows for method arguments to be validated according to their docblocks

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

[](#installation)

Simply install with composer:

```
composer require aesonus/paladin

```

Usage
-----

[](#usage)

Usage is simple. Just use the trait ValidatesParameters in your classes:

```
use Aesonus\Paladin\ValidatesParameters;
```

To validate parameters, just call the protected method validate with the method name and arguments:

```
/**
 *
 * @param int[] $param
*/
public function myMethod(array $param)
{
    $this->validate(__METHOD__, func_get_args());
}
```

The previous example will throw an exception if the passed argument is not an array of only int types.

You can use most psalm types as well. Refer to psalm documentation to see what types you can use.

Currently, templates and complex callables cannot be validated

###  Health Score

30

—

LowBetter than 65% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity12

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity68

Established project with proven stability

 Bus Factor1

Top contributor holds 100% 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 ~47 days

Recently: every ~194 days

Total

20

Last Release

2076d ago

Major Versions

v0.4.2 → v1.0.0-beta2018-06-18

v0.4.3 → v1.0.1-beta2018-06-21

v1.0.3 → v2.02018-07-19

v2.0.1 → 3.0.x-dev2020-09-01

PHP version history (3 changes)v0.1.0PHP ^5.6

v1.0.3PHP &gt;=5.6 || &gt;=7

3.0.x-devPHP ^7.4

### Community

Maintainers

![](https://www.gravatar.com/avatar/c43cc8496d84b0c76ac9c62092cc312302a83fbb4558e8e8d1761fe8c9e049bd?d=identicon)[Aesonus](/maintainers/Aesonus)

---

Top Contributors

[![Aesonus](https://avatars.githubusercontent.com/u/24643115?v=4)](https://github.com/Aesonus "Aesonus (103 commits)")

### Embed Badge

![Health badge](/badges/aesonus-paladin/health.svg)

```
[![Health](https://phpackages.com/badges/aesonus-paladin/health.svg)](https://phpackages.com/packages/aesonus-paladin)
```

###  Alternatives

[webmozart/assert

Assertions to validate method input/output with nice error messages.

7.6k894.0M1.2k](/packages/webmozart-assert)[bensampo/laravel-enum

Simple, extensible and powerful enumeration implementation for Laravel.

2.0k15.9M104](/packages/bensampo-laravel-enum)[swaggest/json-schema

High definition PHP structures with JSON-schema based validation

48612.5M73](/packages/swaggest-json-schema)[stevebauman/purify

An HTML Purifier / Sanitizer for Laravel

5325.6M19](/packages/stevebauman-purify)[ashallendesign/laravel-config-validator

A package for validating your Laravel app's config.

217905.3k5](/packages/ashallendesign-laravel-config-validator)[crazybooot/base64-validation

Laravel validators for base64 encoded files

1341.9M8](/packages/crazybooot-base64-validation)

PHPackages © 2026

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