PHPackages                             davidsonts/validator-docs - 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. davidsonts/validator-docs

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

davidsonts/validator-docs
=========================

Biblioteca PHP para validação de documentos do Brasil usando Laravel

5.3.0(2y ago)069MITPHPPHP ^7.3|^8.0

Since Jul 27Pushed 2y agoCompare

[ Source](https://github.com/Davidsonts/validator-docs)[ Packagist](https://packagist.org/packages/davidsonts/validator-docs)[ Fund](https://nubank.com.br/pagar/518o5/zVBzxd00Sb)[ RSS](/packages/davidsonts-validator-docs/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (1)Dependencies (6)Versions (36)Used By (0)

Validator Docs - Brasil
=======================

[](#validator-docs---brasil)

*Biblioteca PHP para validação de documentos do Brasil usando **Laravel***

[![Build Status](https://github.com/davidsonts/validator-docs/actions/workflows/proposing-changes.yml/badge.svg)](https://github.com/davidsonts/validator-docs/actions/workflows/proposing-changes.yml/badge.svg)[![Coverage Status](https://camo.githubusercontent.com/e21b2a5d99fc72847ae7f5e4e77549c3f0ebcd3b921c96a17f01253300061eef/68747470733a2f2f636f766572616c6c732e696f2f7265706f732f6769746875622f6461766964736f6e74732f76616c696461746f722d646f63732f62616467652e737667)](https://coveralls.io/github/davidsonts/validator-docs)[![PHPStan](https://camo.githubusercontent.com/441b5874ce4df0a2defc892979c96c46889b69cb32119d04f0b48626349f8bc9/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5048505374616e2d656e61626c65642d627269676874677265656e2e7376673f7374796c653d666c6174)](https://github.com/phpstan/phpstan)[![Monthly Downloads](https://camo.githubusercontent.com/b24c71b507605744f909155601b3fdd9a5d6172fec75d5975448f823664d8a5a/687474703a2f2f706f7365722e707567782e6f72672f6461766964736f6e74732f76616c696461746f722d646f63732f642f6d6f6e74686c79)](https://packagist.org/packages/davidsonts/validator-docs)[![Total Downloads](https://camo.githubusercontent.com/a910613e202f064055d0988fb49f83c9bc140973a60cc779d59c1545f6b50a67/68747470733a2f2f706f7365722e707567782e6f72672f6461766964736f6e74732f76616c696461746f722d646f63732f646f776e6c6f616473)](https://packagist.org/packages/davidsonts/validator-docs)[![License](https://camo.githubusercontent.com/cc3af6fa9b69c96f8aa95010d1cc8bcbe3ba10179192ce0baccc8f639d2dfc69/68747470733a2f2f706f7365722e707567782e6f72672f6461766964736f6e74732f76616c696461746f722d646f63732f6c6963656e7365)](https://packagist.org/packages/davidsonts/validator-docs)

> ### Por favor, considere **[fazer uma doação](https://nubank.com.br/pagar/518o5/zVBzxd00Sb)**, apoie nossas atividades
>
> [](#por-favor-considere-fazer-uma-doação-apoie-nossas-atividades)

> Para a versão legada compatível com Laravel 5 consulte o branch

Recursos
--------

[](#recursos)

- Validar qualquer documento do Brasil;
- Código testado e confiável;
- Open Source;
- Usado por milhares de sistemas;
- Aprovado pela comunidade Laravel.

Instalação
----------

[](#instalação)

No arquivo `composer.json`, adicione validator-docs como dependência do seu projeto:

```
"require": {
    "davidsonts/validator-docs" : "^3.9"
 },

```

Depois execute:

```
composer install
```

Ou simplesmente execute o comando:

```
composer require davidsonts/validator-docs
```

---

Testes
------

[](#testes)

Para executar os testes, basta fazer o seguinte:

- Instale as dependências do projeto;

```
composer install
```

- Execute os testes.

```
composer test
```

---

Como usar a biblioteca
----------------------

[](#como-usar-a-biblioteca)

Agora que os métodos de validação validator-docs Brasil estão disponíveis, será possível usar da seguinte forma:

- **cpf** - Verifica se um CPF é valido;

```
$this->validate($request, [
    'cpf' => 'required|cpf',
]);
```

- **cnpj** - Verifica se um CNPJ é valido;

```
$this->validate($request, [
    'cnpj' => 'required|cnpj',
]);
```

- **cnh** - Verifica se uma CNH (Carteira Nacional de Habilitação) é válida;

```
$this->validate($request, [
    'cnh' => 'required|cnh',
]);
```

- **passaporte** - Verifica se uma Passaporte Brasileiro é válido;

```
$this->validate($request, [
    'passaporte' => 'required|passaporte',
]);
```

- **titulo\_eleitor** - Verifica se um Título Eleitoral é válido;

```
$this->validate($request, [
    'titulo_eleitor' => 'required|titulo_eleitor',
]);
```

- **cpf\_cnpj** - Verifica se um CPF ou CNPJ é válido;

```
$this->validate($request, [
    'cpf_cnpj' => 'required|cpf_cnpj',
]);
```

- **inscricao\_estadual** - Verifica se uma Inscrição Estadual é valida para uma Unidade Federativa(UF)/Estado;

```
$this->validate($request, [
    'inscricao_estadual' => 'required|inscricao_estadual:UF',
]);
```

- **nis** - Verifica se um PIS/PASEP/NIT/NIS é válido;

```
$this->validate($request, [
    'nis' => 'required|nis',
]);
```

- **cns** - Verifica se um Cartão Nacional de Saúde (CNS) é válido;

```
$this->validate($request, [
    'cns' => 'required|cns',
]);
```

- **certidao** - Verifica se uma certidão de nascimento/casamento/óbito é válida;

```
$this->validate($request, [
    'certidao' => 'required|certidao',
]);
```

- **renavam** - Verifica se um Registro Nacional de Veículos Automotores (RENAVAM) é válido;

```
$this->validate($request, [
    'renavam' => 'required|renavam',
]);
```

- **placa** - Verifica se a PLACA de um veículo é válida;

```
$this->validate($request, [
    'placa' => 'required|placa',
]);
```

- **ddd** - Verifica se um número de [DDD](https://pt.wikipedia.org/wiki/Discagem_direta_%C3%A0_dist%C3%A2ncia) é válido;

```
$this->validate($request, [
    'ddd' => 'required|ddd',
]);
```

- **formato\_cnpj** - Verifica se o formato`(99.999.999/9999-99)` de um CNPJ é válido;

```
$this->validate($request, [
    'formato_cnpj' => 'required|formato_cnpj',
]);
```

- **formato\_cpf** - Verifica se o formato(`999.999.999-99`) de um CPF é válido;

```
$this->validate($request, [
    'formato_cpf' => 'required|formato_cpf',
]);
```

- **formato\_cpf\_cnpj** - Verifica se o formato de um CPF ou de um CNPJ é válido;

```
$this->validate($request, [
    'formato_cpf_cnpj' => 'required|formato_cpf_cnpj',
]);
```

- **formato\_nis** - Verifica se o formato(`999.99999-99.9`) de um PIS/PASEP/NIT/NIS é válido;

```
$this->validate($request, [
    'formato_nis' => 'required|formato_nis',
]);
```

- **formato\_certidao** - Verifica se o formato(`99999.99.99.9999.9.99999.999.9999999-99` ou `99999 99 99 9999 9 99999 999 9999999 99`), de uma certidão é válida.

```
$this->validate($request, [
    'formato_certidao' => 'required|formato_certidao',
]);
```

---

Combinando validação e formato
------------------------------

[](#combinando-validação-e-formato)

No exemplo abaixo, fazemos um teste onde verificamos a formatação e a validade de um CPF ou CNPJ, para os casos onde a informação deve ser salva em um mesmo atributo:

```
$this->validate($request, [
    'cpf_or_cnpj' => 'formato_cpf_cnpj|cpf_cnpj',
]);
```

---

Exemplo de uso em um controller
-------------------------------

[](#exemplo-de-uso-em-um-controller)

Método de validação de exemplo em um controller com todas as possibilidades de validação

```
public function store(Request $request)
{
    $data = $request->all();

    $this->validate($request, [
        'cpf' => 'required|cpf',
        'cnpj' => 'required|cnpj',
        'cnh' => 'required|cnh',
        'titulo_eleitor' => 'required|titulo_eleitor',
        'nis' => 'required|nis',
        'cns' => 'required|cns',
        'ddd' => 'required|ddd',
        'renavam' => 'required|renavam',
        'placa' => 'required|placa',
        'certidao' => 'required|certidao',
        'inscricao_estadual' => 'required|inscricao_estadual:SP',
        'passaporte' => 'required|passaporte',
    ]);

    dd($data);
}
```

**Observe que para validar uma inscrição estadual é necessário informar a [UF](https://pt.wikipedia.org/wiki/Unidades_federativas_do_Brasil)**

---

Geradores de documentos para testes
-----------------------------------

[](#geradores-de-documentos-para-testes)

- **CNH** - [http://4devs.com.br/gerador\_de\_cnh](http://4devs.com.br/gerador_de_cnh)
- **TÍTULO ELEITORAL** - [http://4devs.com.br/gerador\_de\_titulo\_de\_eleitor](http://4devs.com.br/gerador_de_titulo_de_eleitor)
- **CNPJ** -
- **CPF** -
- **NIS** - [https://www.4devs.com.br/gerador\_de\_pis\_pasep](https://www.4devs.com.br/gerador_de_pis_pasep)
- **CNS** -
- **CERTIDÕES** - [https://www.4devs.com.br/gerador\_numero\_certidoes](https://www.4devs.com.br/gerador_numero_certidoes)
- **INSCRIÇÃO ESTADUAL** - [https://www.4devs.com.br/gerador\_de\_inscricao\_estadual](https://www.4devs.com.br/gerador_de_inscricao_estadual)
- **RENAVAM** - [https://www.4devs.com.br/gerador\_de\_renavam](https://www.4devs.com.br/gerador_de_renavam)
- **PLACA** - [https://www.4devs.com.br/gerador\_de\_placa\_automoveis](https://www.4devs.com.br/gerador_de_placa_automoveis)
- **Passaporte Brasileiro** -

Fique a vontade para contribuir de qualquer forma.

Caso tenha alguma dúvida ou encontre algum bug, abra uma [issue](https://github.com/davidsonts/validator-docs/issues) ou pesquise por issues antigas.

[Contribuidores](https://github.com/davidsonts/validator-docs/graphs/contributors)
----------------------------------------------------------------------------------

[](#contribuidores)

Contribuições de qualquer tipo são bem-vindas!

###  Health Score

34

—

LowBetter than 77% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity8

Limited adoption so far

Community16

Small or concentrated contributor base

Maturity80

Battle-tested with a long release history

 Bus Factor1

Top contributor holds 72% 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 ~85 days

Recently: every ~108 days

Total

34

Last Release

755d ago

Major Versions

1.5.1 → 5.x-dev2019-08-14

1.5.2 → 2.0.02019-09-09

2.2.0 → 3.0.02019-10-23

3.10.0 → 5.1.02024-04-16

PHP version history (3 changes)2.1.0PHP ^7.2

3.5.2PHP &gt;=7.2

3.6.0PHP ^7.3|^8.0

### Community

Maintainers

![](https://www.gravatar.com/avatar/9de18dcc8981c1a3b98b61b47d47695db010d04a70f00842ba622b3e4c1e6093?d=identicon)[Davidsonts](/maintainers/Davidsonts)

---

Top Contributors

[![geekcom](https://avatars.githubusercontent.com/u/3955933?v=4)](https://github.com/geekcom "geekcom (170 commits)")[![allcontributors[bot]](https://avatars.githubusercontent.com/in/23186?v=4)](https://github.com/allcontributors[bot] "allcontributors[bot] (14 commits)")[![andrergcosta](https://avatars.githubusercontent.com/u/5838239?v=4)](https://github.com/andrergcosta "andrergcosta (8 commits)")[![vicentimartins](https://avatars.githubusercontent.com/u/978268?v=4)](https://github.com/vicentimartins "vicentimartins (7 commits)")[![omarkdev](https://avatars.githubusercontent.com/u/14936241?v=4)](https://github.com/omarkdev "omarkdev (6 commits)")[![Davidsonts](https://avatars.githubusercontent.com/u/6026514?v=4)](https://github.com/Davidsonts "Davidsonts (6 commits)")[![MrEko](https://avatars.githubusercontent.com/u/3877358?v=4)](https://github.com/MrEko "MrEko (5 commits)")[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (4 commits)")[![lordantonelli](https://avatars.githubusercontent.com/u/7587764?v=4)](https://github.com/lordantonelli "lordantonelli (4 commits)")[![rafael-neris](https://avatars.githubusercontent.com/u/72398144?v=4)](https://github.com/rafael-neris "rafael-neris (3 commits)")[![victorhsanjos](https://avatars.githubusercontent.com/u/12089532?v=4)](https://github.com/victorhsanjos "victorhsanjos (2 commits)")[![thicolares](https://avatars.githubusercontent.com/u/849493?v=4)](https://github.com/thicolares "thicolares (2 commits)")[![setefocos](https://avatars.githubusercontent.com/u/26557942?v=4)](https://github.com/setefocos "setefocos (1 commits)")[![Tagliatti](https://avatars.githubusercontent.com/u/4907036?v=4)](https://github.com/Tagliatti "Tagliatti (1 commits)")[![cauafroes](https://avatars.githubusercontent.com/u/67842825?v=4)](https://github.com/cauafroes "cauafroes (1 commits)")[![hboavent](https://avatars.githubusercontent.com/u/124891759?v=4)](https://github.com/hboavent "hboavent (1 commits)")[![maingiron](https://avatars.githubusercontent.com/u/18449965?v=4)](https://github.com/maingiron "maingiron (1 commits)")

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan

Code StylePHP\_CodeSniffer

Type Coverage Yes

### Embed Badge

![Health badge](/badges/davidsonts-validator-docs/health.svg)

```
[![Health](https://phpackages.com/badges/davidsonts-validator-docs/health.svg)](https://phpackages.com/packages/davidsonts-validator-docs)
```

###  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)[geekcom/validator-docs

Biblioteca PHP para validação de documentos do Brasil usando Laravel

5861.2M4](/packages/geekcom-validator-docs)[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)
