You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
SmartHR β AI-Powered Human Resource Management System (HRMS)
Theme: Build the Future of HR Management with AI-Powered Solutions
π Overview
SmartHR is a next-generation, full-stack Human Resource Management System (HRMS) that leverages Artificial Intelligence to streamline and automate HR operations for modern workplaces. It goes far beyond recruitment β covering the entire employee lifecycle from onboarding to payroll, attendance, performance, and AI-driven analytics.
Built with a React + TailwindCSS frontend and a Node.js / Express / MongoDB backend, SmartHR is designed to support 5,000+ concurrent employee logins with real-time data processing, role-based personalized dashboards, and deep AI automation across all HR functions.
π― Objectives & Project Requirements
β Incorporate all core HRMS functionalities β employee data management, attendance, payroll, and performance tracking.
β AI-driven resume screening & evaluation without human intervention.
β AI-powered conversation & voice interaction models for recruitment and candidate screening.
β Multi-role login system with tailored access for: Management Admin Β· Senior Manager Β· HR Recruiter Β· Employee.
β Personalized dashboards β each user sees their own activity; Admins view individual + company-wide dashboards.
β Scalability β supports 5,000+ employee logins with real-time data processing.
β Clean, intuitive UI/UX, optimized for both web and mobile (responsive) access.
# Start MongoDB (Windows)
net start MongoDB
# Seed database with roles and demo data
npm run seed
# Start development server
npm run dev
# Production
npm start
Frontend Setup
cd frontend
npm install
Create .env in the frontend/ directory:
VITE_API_URL=http://localhost:5000/api/v1
npm run dev
Docker (Full Stack)
docker-compose up --build
π‘ API Endpoints (Summary)
See backend/API_DOCUMENTATION.md for full reference.
Authentication
Method
Endpoint
Description
POST
/api/v1/auth/register
Register user
POST
/api/v1/auth/login
Login (returns JWT)
GET
/api/v1/auth/logout
Logout
GET
/api/v1/auth/me
Get current user info
Employee Management
Method
Endpoint
Description
GET
/api/v1/employees
List all employees
POST
/api/v1/employees
Add new employee
PUT
/api/v1/employees/:id
Update employee
DELETE
/api/v1/employees/:id
Remove employee
Attendance
Method
Endpoint
Description
POST
/api/v1/attendance/mark
Mark attendance
GET
/api/v1/attendance/:employeeId
Get attendance history
POST
/api/v1/attendance/leave
Apply for leave
Payroll
Method
Endpoint
Description
GET
/api/v1/payroll/:employeeId
Get payroll records
POST
/api/v1/payroll/process
Process monthly payroll
GET
/api/v1/payroll/slip/:id
Download payslip
Recruitment
Method
Endpoint
Description
GET
/api/v1/jobs
List job postings
POST
/api/v1/jobs
Create job posting
POST
/api/v1/applications
Submit application
POST
/api/v1/resumes/upload
Upload resume
POST
/api/v1/resumes/parse
AI parse & score resume
Interviews
Method
Endpoint
Description
POST
/api/v1/interviews/start
Start video interview session
POST
/api/v1/interviews/upload
Upload interview recording
GET
/api/v1/interviews/:id/report
Get AI evaluation report
Analytics
Method
Endpoint
Description
GET
/api/v1/analytics/dashboard
Role-based dashboard metrics
GET
/api/v1/analytics/recruitment
Recruitment funnel stats
GET
/api/v1/analytics/attendance
Attendance summary
GET
/api/v1/analytics/performance
Performance overview
π Scalability & Design Targets
5,000+ concurrent employee logins with real-time data processing
Responsive UI/UX β optimized for both web and mobile
Modular, service-oriented backend β each HRMS domain is a separate service layer
CDN-backed media delivery via Cloudinary for resumes, profile images, and interview videos
Horizontal scalability supported via Docker containerization
π€ Contributing
Fork the repository
Create a feature branch: git checkout -b feature/your-feature
Commit changes: git commit -m "feat: describe your change"
Push to branch: git push origin feature/your-feature
Open a Pull Request
π License
MIT
For module-specific details, see backend/README.md and frontend/README.md.