2.3 KiB
2.3 KiB
Todai Jobs - Seeder API
Microservice for seeding the Todai Jobs database with realistic sample data.
Overview
This seeder populates the database with:
- ✅ 1 SuperAdmin user
- ✅ 10 real Japanese companies (Toyota, Honda, Denso, etc.)
- ✅ 8 Company Admins and Recruiters
- ✅ 30 Foreign Job Seekers (Brazilian, Filipino, Nepalese, etc.)
- ✅ 50 Realistic job listings
- ✅ 20 Sample applications
- ✅ 47 Japanese prefectures
- ✅ Cities for Aichi and Tokyo
Installation
cd seeder-api
npm install
Configuration
Create a .env file or use default values:
DB_HOST=172.28.22.171
DB_PORT=5432
DB_USER=usuario
DB_PASSWORD=senha123
DB_NAME=todaijobs
Usage
Full Seed
npm run seed
Reset Database (Drop all tables)
npm run seed:reset
Seed Specific Tables
npm run seed:users
npm run seed:companies
npm run seed:jobs
Login Credentials
SuperAdmin
- Identifier:
superadmin - Password:
Admin@2025!
Company Admin (Multi-company: Toyota & Denso)
- Identifier:
takeshi_yamamoto - Password:
Takeshi@2025
Recruiter (Honda)
- Identifier:
maria_santos - Password:
Maria@2025
Job Seeker
- Identifier:
paulo_santos - Password:
User@2025
All job seekers use password: User@2025
Seeding Order
The seeder respects foreign key dependencies:
- Prefectures (47 Japanese prefectures)
- Cities (Aichi + Tokyo municipalities)
- Users (SuperAdmin, Admins, Recruiters, JobSeekers)
- Companies (10 major Japanese companies)
- UserCompany (Multi-tenant associations)
- Jobs (50 job listings)
- Applications (20 sample applications)
Database Schema
All tables are created via migrations in /backend/migrations/. This seeder only populates data.
Development
The seeder uses:
- pg: PostgreSQL client
- bcrypt: Password hashing
- dotenv: Environment variables
Notes
- Run migrations before seeding
- Use
--resetflag carefully (destroys all data) - Default passwords are for development only
Examples
# Fresh start
npm run seed:reset
cd ../backend
psql -h 172.28.22.171 -U usuario -d todaijobs -f migrations/*.sql
cd ../seeder-api
npm run seed
# Update data
npm run seed