PHPackages                             ewereka/laravel-extra-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. ewereka/laravel-extra-validation

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

ewereka/laravel-extra-validation
================================

A set of extended validation rules for use with Laravel.

v0.0.2(6y ago)0171[2 PRs](https://github.com/ewereka/laravel-extra-validation/pulls)MITPHPPHP ^7.2

Since Sep 5Pushed 3y ago1 watchersCompare

[ Source](https://github.com/ewereka/laravel-extra-validation)[ Packagist](https://packagist.org/packages/ewereka/laravel-extra-validation)[ Docs](https://github.com/ewereka/laravel-extra-validation)[ RSS](/packages/ewereka-laravel-extra-validation/feed)WikiDiscussions master Synced 2mo ago

READMEChangelog (1)DependenciesVersions (5)Used By (0)

Laravel Validation Rules
========================

[](#laravel-validation-rules)

This package provides a set of reusable validation rules for your Laravel projects. Use them to augment the existing set provided by Laravel itself.

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

[](#installation)

Pull in the package using composer

```
composer require ewereka/laravel-extra-validation
```

Usage
-----

[](#usage)

As per the Laravel [documentation](https://laravel.com/docs/5.8/validation#using-rule-objects), simply import the relevant validation class wherever you require it, and then include it within the rules for a particular field:

```
use Ewereka\Validation\Rules\StrongPassword;

// ...

$request->validate([
    'password' => ['bail', 'required', new StrongPassword],
]);
```

If the validation fails, the package will attempt to respond with a localized error message (see message keys below). If the key does not exist, it will fall back to a hard-coded English language version.

Available rules
---------------

[](#available-rules)

The following validation rules are currently available:

RuleMessage KeyDescriptionStrongPasswordvalidation.strong\_passwordRequires the presence of a "strong" password - see class for detailsUSPhoneNumbervalidation.us\_phone\_numberRequires the presence of a valid US telephone number - see class for detailsRecordOwnervalidation.record\_ownerRequires the authenticated user's id to match the user\_id column on a given database record e.g. owner:posts,idMonetaryFigurevalidation.monetary\_figureRequires the presence of a monetary figure e.g $72.33 - see class for detailsDisposableEmailvalidation.disposable\_emailRequires the presence of an email address which is not disposableDoesNotExistvalidation.does\_not\_existRequires that the given value is not present in a given database table / column - see class for detailsDecimalvalidation.decimalRequires that the given value is a decimal with an appropriate format - see class for detailsEncodedImagevalidation.encoded\_imageRequires that the given value is a base64-encoded image of a given mime type - see class for detailsLocationCoordinatesvalidation.location\_coordinatesRequires that the given value is a comma-separated set of latitude and longitude coordinatesFileExistsvalidation.file\_existsRequires that the given value is a path to an existing file - see class for detailsEqualsvalidation.equalsRequires that the given value is equal to another given valueMacAddressvalidation.mac\_addressRequires that the given value is a valid MAC addressISBNvalidation.isbnRequires that the given value is a valid ISBN-10 or ISBN-13 numberEndsWithvalidation.ends\_withRequires that the given value ends with a given string - see class for detailsEvenNumbervalidation.even\_numberRequires that the given value is an even number (decimals are first converted using intval)OddNumbervalidation.odd\_numberRequires that the given value is an odd number (decimals are first converted using intval)Lowercasevalidation.lowercaseRequires that the given value is a lowercase stringUppercasevalidation.uppercaseRequires that the given value is a uppercase stringTitlecasevalidation.titlecaseRequires that the given value is a titlecase stringDomainvalidation.domainRequires that the given value be a domain e.g. google.com, [www.google.com](http://www.google.com)CitizenIdentificationvalidation.citizen\_identificationRequires that the given value be a citizen identification number of usa, uk or france (see class for details)WithoutWhitespacevalidation.without\_whitespaceRequires that the given value not include any whitespace charactersThe package will receive new rules over time, however since these updates will not be breaking changes, they will not receive major version numbers unless Laravel changes in such a way that the package requires a re-write.

Contributions
-------------

[](#contributions)

You are welcome to submit pull requests containing your own validation rules, however to be accepted, they must explain what they do, be useful to others, and include a suitable test to confirm they work correctly.

License
-------

[](#license)

The MIT License (MIT). Please see [License File](LICENSE.md) for more information.

###  Health Score

22

—

LowBetter than 22% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity7

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity46

Maturing project, gaining track record

 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 ~0 days

Total

2

Last Release

2439d ago

### Community

---

Top Contributors

[![seanmetzgar](https://avatars.githubusercontent.com/u/182424?v=4)](https://github.com/seanmetzgar "seanmetzgar (5 commits)")

### Embed Badge

![Health badge](/badges/ewereka-laravel-extra-validation/health.svg)

```
[![Health](https://phpackages.com/badges/ewereka-laravel-extra-validation/health.svg)](https://phpackages.com/packages/ewereka-laravel-extra-validation)
```

###  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)[nette/forms

📝 Nette Forms: generating, validating and processing secure forms in PHP. Handy API, fully customizable, server &amp; client side validation and mature design.

54013.2M446](/packages/nette-forms)[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)

PHPackages © 2026

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