Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

💼 Job SkillMatch Platform

An enterprise-grade monorepo platform connecting Job Seekers, Employers, and Admins with AI-ready skill-matching capabilities.

Node.js Express.js React TypeScript Vite License: MIT

FeaturesArchitectureGetting StartedAPI OverviewContributing


📌 Project Overview

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).


✨ Key Features

🛡️ Admin Portal

  • 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.

🏢 Employer Hub

  • 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.

👨‍💻 Job Seeker Portal

  • 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.

🏗️ Monorepo Architecture

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

🚀 Getting Started

Prerequisites

  • Node.js: v18.0.0 or higher
  • npm: v9.0.0 or higher (or pnpm/yarn)

1️⃣ Clone the Repository

git clone https://github.com/usmanrasheeddev/Job-SkillMatch-Platform.git
cd Job-SkillMatch-Platform

2️⃣ Backend Setup

cd backend
npm install

# Copy environment template & configure vars
cp .env.example .env

# Run development server
npm run dev

Backend API will run at: http://localhost:4000/api

3️⃣ Frontend Setup

Open a new terminal tab:

cd frontend
npm install

# Copy environment template & configure vars
cp .env.example .env

# Run Vite dev server
npm run dev

Frontend Web App will run at: http://localhost:5173


🔌 API Overview

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

🗺️ Roadmap & Future Enhancements

  • 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.

🤝 Contributing

Contributions are welcome! Please review CONTRIBUTING.md for details on commit conventions and pull request guidelines.


📄 License

Distributed under the MIT License. See LICENSE for more information.

Releases

Packages

Contributors

Languages