jeffochoa/validator-factory

Standalone library to use Illuminate\Validation package outside the Laravel framework.

Maintainers

👁 jeffer8a

Package info

github.com/jeffochoa/validator-factory

pkg:composer/jeffochoa/validator-factory

Statistics

Installs: 12 110

Dependents: 2

Suggesters: 0

Stars: 44

Open Issues: 4

1.0.1 2018-09-10 20:21 UTC

Requires (Dev)

Suggests

None

Provides

None

Conflicts

None

Replaces

None

MIT 73f3eaf309a2581f183bb33bcab782e95d9492d9

  • Jefferson Ochoa (Jeff)

This package is auto-updated.

Last update: 2026-06-29 01:08:03 UTC


README

Standalone library to use the Illuminate\Validation package outside the Laravel framework.

Installation

From your terminal, run:

$ composer require jeffochoa/validator-factory

Usage

You need to create a new instance of the ValidatorFactory class.

$factory = new JeffOchoa\ValidatorFactory();

$validator = $factory->make($data = [], $rules);

This will return an instance of Illuminate\Validation\Validator::class.

You can learn more about the Laravel Validator in the official documentation website.

Customizing error messages

You can specify a custom translation root directory

$validator->translationsRootPath(__DIR__ . '/../../src/')
 ->make($data = [], $rules = ['foo' => 'required'])

Inside that directory you will need to create the following structure:

- lang/
 - en/
 - validation.php

You can customize the structure above by specifying the following values when you create a new instance of the ValidatorFactory::class

$factory = new ValidatorFactory($namespace = 'lang', $lang = 'en', $group = 'validation');

If your plan is to use a custom rule object you would generally call the trans helper inside your messages() method when working inside of Laravel. However you will not have access to the trans helper outside of Laravel so you will need to use ValidatorFactory::trans($key) instead.