Comparativo · 2026
FakeForge vs Faker.js
Faker.js (mantido oficialmente como @faker-js/faker desde 2022) é a biblioteca JavaScript de fake data mais popular do mundo, com locale pt_BR e dezenas de outras línguas. FakeForge é uma API hospedada no Brasil com validação algorítmica nativa para CPF, CNPJ, PIX, CNH e CIN. Este comparativo cobre quando vale usar cada um, e como combinar os dois.
TL;DR
- Use FakeForge se: seu sistema valida CPF/CNPJ via mod-11, precisa de CNPJ alfanumérico, PIX BACEN, CNH ou CIN, e você quer chamar uma API em vez de instalar uma lib.
- Use Faker.js se: seu projeto é internacional, roda em Node ou browser, e o Brasil é apenas um locale entre vários. Open source, executa offline, sem rate limit.
- Use os dois juntos: Faker.js para o resto (timestamps, UUIDs, nomes em outras línguas, custom factories), FakeForge para os campos brasileiros que precisam passar em validador oficial.
Tabela comparativa
| Recurso | FakeForge BR | Faker.js |
|---|---|---|
| CPF passa em mod-11 | ✓ nativo | Formato pt_BR sem checksum |
| CNPJ passa em mod-11 | ✓ nativo | Formato pt_BR sem checksum |
| CNPJ Alfanumérico (2026) | ✓ | Não suportado |
| CIN (novo RG biométrico) | ✓ | Não suportado |
| CNH válida (DENATRAN) | ✓ | Não suportado |
| Chave PIX (4 tipos BACEN) | ✓ | Não suportado |
| RG por estado | ✓ | Apenas formato genérico |
| Título de eleitor (TSE) | ✓ | Não suportado |
| PIS/PASEP (mod-11) | ✓ | Não suportado |
| Cartão de crédito (Luhn + bandeira) | ✓ Visa/Master/Elo/Hiper/Amex | Genérico, sem Elo/Hiper |
| CEP coerente por estado | ✓ 10 estados | CEP aleatório no formato BR |
| Bairros e cidades reais | ✓ | Lista limitada |
| Nomes brasileiros típicos | ✓ 125+ nomes | Locale pt_BR completo |
| Telefone com DDD válido | ✓ 67 DDDs | Formato pt_BR sem validar DDD |
| Dados correlacionados (nome+email+CEP) | ✓ via presets | Não, cada provider é isolado |
| Forma de uso | API REST + UI web | Lib npm no seu código |
| Setup necessário | Zero, chamada HTTP | npm install + import |
| Plano gratuito | 100 chamadas/dia (API), web ilimitado | Grátis e open source |
| Plano pago | R$ 29/mês (Dev) | Não tem |
| Export SQL pronto | ✓ INSERT INTO direto | Você escreve o SQL |
| Export JSON/CSV | ✓ | Não nativo, você serializa |
| Roda offline | Não (API hospedada) | ✓ executa no seu Node |
| Interface em português | ✓ | Apenas API em inglês |
| Hospedagem | Brasil (latência baixa) | Sua máquina ou CI |
Quando o Faker.js é melhor
Três cenários onde a lib JS ganha sem disputa:
- Geração offline ou em pipelines de CI. Faker.js executa no seu Node sem chamada de rede. Em test suites com milhares de testes paralelos, isso elimina latência e rate limit. Você gera 50.000 registros em poucos segundos, no próprio runner.
- Projetos internacionais com Brasil como um locale entre vários. Se o seu app suporta pt-BR, en-US, es-MX e ja-JP, mantém um único stack de fake data. FakeForge não tem outros locales, foca só no Brasil.
- Custom factories e correlação manual no código. Faker.js permite escrever factories ricas combinando providers (nome + email + datas + UUIDs + foreign keys) com controle total. FakeForge oferece presets prontos, com menos flexibilidade de composição.
Quando o FakeForge é melhor
Cinco cenários onde a especialização BR muda o resultado:
- Validação algorítmica nativa. O locale pt_BR do Faker.js gera CPF no formato XXX.XXX.XXX-XX mas os dígitos verificadores são aleatórios. Se o seu backend valida via mod-11, esses CPFs falham. FakeForge gera CPF, CNPJ, CNH, PIS e título de eleitor que passam em qualquer validador oficial.
- CNPJ alfanumérico de 2026. A Receita Federal vai introduzir CNPJ alfanumérico em 01/07/2026. O Faker.js ainda não suporta o novo formato. FakeForge gera CNPJs alfanuméricos válidos hoje, alinhado com a Instrução Normativa da Receita.
- PIX no formato BACEN. 4 tipos de chave (CPF, email, telefone +55, EVP UUID v4) com formato exato que passa em validação de PSPs como Mercado Pago, PagBank e Stripe Brasil. Faker.js não cobre PIX.
- Time misto dev + QA + produto. A interface web do FakeForge permite que QA manual e PMs gerem dados sem precisar mexer em código. Faker.js exige instalação no projeto e código pra cada chamada.
- Dados correlacionados via preset. Gere uma pessoa completa em uma chamada: nome típico brasileiro, email do nome (sem acento), CEP que bate com a cidade, DDD que bate com o estado. No Faker.js você compõe isso à mão combinando providers, e tem que manter a coerência manualmente.
Exemplo prático: gerar 100 customers brasileiros válidos
Cenário comum: popular o banco de staging com 100 customers que tenham CPF que passe em mod-11, email coerente com o nome, CEP que bate com o estado e telefone com DDD válido.
FakeForge:
POST https://fakeforge.com.br/api/generate
{
"preset": "customer",
"quantity": 100,
"format": "sql"
}
// Retorna INSERT INTO customers ... pronto pra executar
// CPF passa em validação mod-11 oficial
// Email = primeironome.sobrenome@gmail.com (acentos removidos)
// CEP bate com estado, bairro bate com cidade
// Telefone +55(DDD)(9XXXX-XXXX) com DDD válidoFaker.js:
import { faker, fakerPT_BR } from '@faker-js/faker';
import { cpf } from 'cpf-cnpj-validator'; // lib extra pra mod-11
const customers = Array.from({ length: 100 }, () => {
const nome = fakerPT_BR.person.fullName();
const [primeiro, sobrenome] = nome.split(' ');
return {
nome,
cpf: cpf.generate(), // CPF válido via lib extra
email: `${primeiro}.${sobrenome}@gmail.com`.toLowerCase(),
cep: fakerPT_BR.location.zipCode('#####-###'), // aleatório, sem checagem estado
telefone: fakerPT_BR.phone.number(), // DDD não validado
estado: fakerPT_BR.location.state(),
};
});
// CPF passa em mod-11 (graças à lib extra)
// Mas CEP, estado e DDD não estão correlacionados
// Você implementa a coerência manualmenteO Faker.js precisa de uma lib auxiliar para gerar CPF/CNPJ válidos, e a correlação entre campos brasileiros (estado, CEP, DDD) fica por sua conta. FakeForge entrega o pacote coerente em uma chamada.
Veredicto honesto
Faker.js é uma das melhores libs de fake data do ecossistema JS. A questão não é qualidade, é foco. Faker.js cobre 60+ locales com profundidade média em cada um. FakeForge cobre um locale (Brasil) com profundidade alta, e adiciona validações algorítmicas, PIX, CNH, CIN que o Faker.js não pretende cobrir.
Se o seu produto é internacional e o BR é só um mercado entre vários, Faker.js cobre tudo razoavelmente bem. Quando o validador BR rejeitar um CPF, troque para FakeForge naquele campo específico.
A combinação que funciona melhor em times BR: Faker.js para o esqueleto (timestamps, UUIDs, números aleatórios, nomes em outras línguas), FakeForge para qualquer campo brasileiro que precise passar em validação real.
Próximo passo
Teste o FakeForge agora gratuitamente. Sem cadastro, sem cartão.