gohorsejobs/seeder-api
Tiago Yamamoto 340911b4d1 feat(auth): add cookie parsing and JWT auth guard to backoffice
- Add JWT auth guard with Bearer token and cookie support
- Update .env.example files with PASSWORD_PEPPER documentation
- Update seeder to use PASSWORD_PEPPER for password hashing
- Update seeder README with hash verification examples
- Fix frontend auth and page components
- Update backend JWT service and seed migration
2025-12-24 10:27:04 -03:00
..
node_modules first commit 2025-12-09 19:04:48 -03:00
src feat(auth): add cookie parsing and JWT auth guard to backoffice 2025-12-24 10:27:04 -03:00
.dockerignore chore: add Dockerfiles and gitignore files for all services 2025-12-14 09:28:09 -03:00
.env.example feat(auth): add cookie parsing and JWT auth guard to backoffice 2025-12-24 10:27:04 -03:00
.gitignore chore: add Dockerfiles and gitignore files for all services 2025-12-14 09:28:09 -03:00
Dockerfile chore: add Dockerfiles and gitignore files for all services 2025-12-14 09:28:09 -03:00
package-lock.json first commit 2025-12-09 19:04:48 -03:00
package.json first commit 2025-12-09 19:04:48 -03:00
README.md feat(auth): add cookie parsing and JWT auth guard to backoffice 2025-12-24 10:27:04 -03:00

Seeder API

Node.js PostgreSQL

Microserviço para popular o banco de dados com dados realistas de teste.


📊 Dados Gerados

Entidade Quantidade Descrição
SuperAdmin 1 Usuário administrador do sistema
Empresas 31 30 empresas tech + 🏭 ACME Corp
Admins/Recruiters 8+ Usuários de empresas
Candidatos 30 Job seekers de várias nacionalidades
Vagas 1059 990 vagas normais + 69 vagas ACME (humor tech)
Candidaturas 20 Aplicações de exemplo
Prefeituras 47 Todas as prefeituras japonesas
Cidades ~50 Cidades de Aichi e Tokyo

🏭 ACME Corporation

"Se não explodir, não é ACME!" ™

A ACME Corp é nossa empresa especial com 69 vagas de tecnologia com humor, inspirada nos clássicos Looney Tunes.

Destaques das Vagas ACME:

  • 🚀 Engenheiro de Software de Foguetes Portáteis
  • 💣 Dev de TNT Inteligente
  • 🕳️ Arquiteto de Túneis Instantâneos
  • 📊 Data Scientist de Previsão de Falhas (Accuracy: 100%)
  • 🦅 ML Engineer de Detecção de Papa-Léguas (Precision: 0%)
  • 💥 Chief Explosion Officer (CEO)
  • 🎨 UX Designer de Dinamite
  • E mais 62 vagas hilárias...

🦸 Stark Industries (Marvel)

"Changing the World for a Better Tomorrow"

8 vagas de alta tecnologia no universo Marvel:

  • ☁️ Arquiteto de Cloud para J.A.R.V.I.S.
  • DevOps Engineer do Arc Reactor
  • 🤖 ML Engineer para Iron Man Suits
  • 🛡️ Security Engineer Anti-Hydra
  • 🔬 Nanotechnology Software Engineer

Sede: Stark Tower, Manhattan, NY


🐔 Los Pollos Hermanos (Breaking Bad)

"Taste the Family!"

4 vagas para quem gosta de discrição absoluta:

  • 🔒 Engenheiro de Redes Air-Gapped
  • 👻 Dev Fullstack de Logística Fantasma
  • 🎯 Pentester Especialista em Segurança Ofensiva
  • 🗄️ DBA com Expertise em Data Purge

CEO: Gustavo Fring
Nota: NDA de 847 páginas obrigatório


☢️ Springfield Nuclear Power Plant (Simpsons)

"Excellent..."

4 vagas com orçamento mínimo do Sr. Burns:

  • 💾 Administrador de Sistemas COBOL/Mainframe (desde 1970)
  • 🐘 Dev Fullstack Low Cost (PHP 4 / jQuery)
  • 📹 Especialista em Cyber-Segurança e Vigilância
  • 📊 Engenheiro de Dados e Analytics de Produtividade

CEO: C. Montgomery Burns (103 anos)
Inspetor de Segurança: Homer J. Simpson


🚀 Uso

Instalação

cd seeder-api
npm install

Configuração

Crie um .env baseado no .env.example:

DB_HOST=localhost
DB_PORT=5432
DB_USER=postgres
DB_PASSWORD=yourpassword
DB_NAME=gohorsejobs

# MUST match backend PASSWORD_PEPPER
PASSWORD_PEPPER=your-pepper-value

⚠️ IMPORTANTE: O PASSWORD_PEPPER deve ser idêntico ao configurado no backend. Caso contrário, os usuários criados pelo seeder não conseguirão fazer login.

Comandos

Comando Descrição
npm run seed Popula todas as tabelas
npm run seed:reset Limpa e repopula tudo
npm run seed:users Apenas usuários
npm run seed:companies Apenas empresas
npm run seed:jobs Apenas vagas

🔑 Credenciais Geradas

SuperAdmin

  • Login: superadmin
  • Senha: Admin@2025!

Admin de Empresa (todos usam mesma senha)

  • Login: takeshi_yamamoto (TechCorp)
  • Login: kenji@appmakers.mobile (AppMakers)
  • Senha: Takeshi@2025

Recrutador

  • Login: maria_santos (DesignHub)
  • Senha: User@2025

🐺 Wile E. Coyote (ACME Corp)

  • Login: wile_e_coyote
  • Senha: MeepMeep@123
  • Empresa: ACME Corporation
  • Cargo: HR Manager & Chief Failure Officer

Candidatos (todos usam mesma senha)

  • Login: paulo_santos
  • Login: maria@email.com
  • Login: ana_silva, carlos_santos, maria_oliveira, pedro_costa, juliana_ferreira
  • Senha: User@2025

📁 Estrutura

src/
├── index.js          # Entrypoint principal
├── config.js         # Configuração de BD
└── seeders/
    ├── users.js      # Seed de usuários
    ├── companies.js  # Seed de empresas
    ├── jobs.js       # Seed de vagas
    ├── acme.js       # 🏭 ACME Corp + 69 vagas com humor
    ├── cities.js     # Seed de cidades
    └── applications.js # Seed de candidaturas

⚠️ Importante

  • Execute as migrations antes do seed
  • Use apenas em ambiente de desenvolvimento
  • Senhas padrão são apenas para testes
  • ACME não se responsabiliza por lesões causadas por produtos falhos 🐺