An enterprise-grade monorepo platform connecting Job Seekers, Employers, and Admins with AI-ready skill-matching capabilities.
Features • Architecture • Getting Started • API Overview • Contributing
Job SkillMatch Platform is designed to streamline hiring by dynamically bridging the gap between talent skills and employer requirements. Built with a scalable full-stack TypeScript architecture, it provides tailored workflows for three distinct user roles while keeping the system extensible for future AI integrations (resume parsing, skill-gap recommendations, intelligent job matching).
- User Management: Monitor, activate, or suspend Job Seeker and Employer accounts.
- Category Management: Organize industries, job categories, and standardized skill tags.
- Employer Verification: Review and approve newly registered companies.
- Platform Analytics: Audit system activities and platform-wide statistics.
- Company Profiles: Build and manage verified corporate brand profiles.
- Job Posting: Publish jobs with specific skill tags, salary expectations, and locations.
- Candidate Shortlisting: Review job applications and flag top talent.
- Interview Scheduling: Manage multi-stage hiring pipelines and schedule candidate interviews.
- Interactive Profile: Highlight core competencies, experience, and uploaded resume assets.
- Smart Search: Filter jobs based on required skills, location, and employment type.
- Application Tracking: Seamlessly submit applications and track review statuses in real-time.
Job-SkillMatch-Platform/
├── 📁 .github/
│ └── 📁 workflows/ # GitHub Actions CI/CD pipelines
├── 📁 backend/ # Node.js + Express + TypeScript REST API
│ ├── 📁 src/
│ │ ├── 📁 config/ # Environment & DB configurations
│ │ ├── 📁 controllers/ # Request handlers (Admin, Employer, Seeker)
│ │ ├── 📁 middlewares/ # Authentication & Error Handling
│ │ ├── 📁 models/ # Database schemas & TypeScript types
│ │ ├── 📁 routes/ # API endpoints grouping
│ │ ├── 📁 services/ # Business logic layer
│ │ └── 📁 utils/ # Shared helper functions
│ ├── .env.example
│ ├── package.json
│ └── tsconfig.json
├── 📁 frontend/ # React 18 + Vite + TypeScript SPA
│ ├── 📁 src/
│ │ ├── 📁 components/ # Reusable UI components
│ │ ├── 📁 pages/ # Role-based views (Admin, Employer, Seeker)
│ │ ├── 📁 services/ # Axios/Fetch API client layer
│ │ └── 📁 store/ # State management
│ ├── .env.example
│ ├── index.html
│ ├── package.json
│ └── tsconfig.json
├── .gitignore
├── CONTRIBUTING.md
├── LICENSE
└── README.md
- Node.js:
v18.0.0or higher - npm:
v9.0.0or higher (orpnpm/yarn)
git clone https://github.com/usmanrasheeddev/Job-SkillMatch-Platform.git
cd Job-SkillMatch-Platformcd backend
npm install
# Copy environment template & configure vars
cp .env.example .env
# Run development server
npm run devBackend API will run at: http://localhost:4000/api
Open a new terminal tab:
cd frontend
npm install
# Copy environment template & configure vars
cp .env.example .env
# Run Vite dev server
npm run devFrontend Web App will run at: http://localhost:5173
| Module | Method | Endpoint | Description |
|---|---|---|---|
| Admin | GET |
/api/admin/health |
Admin route health check |
| Employer | GET |
/api/employer/health |
Employer route health check |
| Job Seeker | GET |
/api/jobseeker/health |
Job seeker route health check |
- AI-Powered Resume Parsing: Extract candidate skills automatically using NLP.
- Skill Gap Analysis: Suggest relevant courses/certifications for applicants.
- Automated Matching Engine: Calculate percentage score for Job Seeker vs. Job Post requirement.
- Real-time Notifications: WebSockets for interview updates and application status changes.
Contributions are welcome! Please review CONTRIBUTING.md for details on commit conventions and pull request guidelines.
Distributed under the MIT License. See LICENSE for more information.