A comprehensive, modern Human Resource Management System built with React, Node.js, and Prisma. Features AI-powered analytics, role-based access control, and a beautiful, responsive user interface.
- Multi-role Support: Admin, HR, Manager, Employee roles with granular permissions
- Secure Authentication: JWT-based authentication with 2FA support
- Profile Management: Avatar uploads, personal information, department assignments
- Audit Logging: Comprehensive activity tracking and security monitoring
- Performance Insights: AI-driven employee performance analysis
- Predictive Analytics: Turnover prediction, budget forecasting, risk assessment
- Sentiment Analysis: Employee feedback and satisfaction monitoring
- Smart Recommendations: Data-driven HR decision support
- Employee Management: Complete employee lifecycle management
- Leave Management: Request, approval, and tracking system
- Job Posting & Recruitment: End-to-end hiring workflow
- Interview Scheduling: Automated interview coordination
- Document Management: Secure file storage and sharing
- Event Management: Company events and employee engagement
- Dynamic Dashboards: Real-time KPI monitoring and reporting
- Export Capabilities: Multi-format data export (JSON, CSV, PDF, Excel)
- Auto-refresh: Real-time data updates with configurable intervals
- Dark Mode: Modern UI with theme switching
- Responsive Design: Mobile-first, cross-device compatibility
FWC_HRMS/
βββ HRMS_Frontend/ # React + Vite Frontend
β βββ src/
β β βββ components/ # Reusable UI components
β β βββ pages/ # Route-based page components
β β βββ services/ # API service layer
β β βββ contexts/ # React context providers
β β βββ utils/ # Helper functions
βββ HRMS_Backend/ # Node.js + Express Backend
β βββ routes/ # API route definitions
β βββ controllers/ # Business logic controllers
β βββ middlewares/ # Authentication & validation
β βββ prisma/ # Database schema & migrations
β βββ utils/ # Backend utilities
βββ docs/ # Documentation files
- Node.js (v18 or higher)
- npm or yarn
- SQLite (included with Prisma)
-
Clone the repository
git clone https://github.com/your-org/FWC_HRMS.git cd FWC_HRMS -
Setup Backend
cd HRMS_Backend npm install # Configure environment variables cp .env.example .env # Edit .env with your configuration # Setup database npx prisma generate npx prisma db push npx prisma db seed # Start backend server npm run dev
-
Setup Frontend
cd ../HRMS_Frontend npm install # Start frontend development server npm run dev
-
Access the application
- Frontend: http://localhost:5173
- Backend API: http://localhost:3000
User(Role) : Login ID / Password
Admin: a@a.com / 12
HR: h@h.com / 12
Manager: m@m.com / 12
Employee: e@e.com / 12
- React 19.1.1 - Modern UI library with hooks
- Vite 7.1.11 - Fast build tool and dev server
- React Router - Client-side routing
- Tailwind CSS - Utility-first CSS framework
- Lucide React - Beautiful icon library
- Framer Motion - Animation library
- Recharts - Data visualization
- Papa Parse - CSV parsing
- Node.js - JavaScript runtime
- Express 5.1.0 - Web application framework
- Prisma 6.18.0 - Modern database toolkit
- SQLite - Lightweight database
- JWT - Authentication tokens
- bcrypt - Password hashing
- Multer - File upload handling
- Google Generative AI - AI integration
- ESLint - Code linting
- Prettier - Code formatting
- Nodemon - Development server
- PostCSS - CSS processing
- API Documentation - Complete API reference
- Frontend Guide - Component architecture and routing
- Backend Guide - Server architecture and database
- Deployment Guide - Production deployment instructions
- Architecture Diagrams - System design and data flow
- JWT Authentication - Secure token-based authentication
- Two-Factor Authentication - TOTP, SMS, and backup codes
- Role-Based Access Control - Granular permission system
- Password Hashing - bcrypt encryption
- Audit Logging - Complete activity tracking
- CORS Protection - Cross-origin request security
- Input Validation - Comprehensive data validation
- Modern Design - Clean, professional interface
- Dark/Light Mode - Theme switching capability
- Responsive Layout - Mobile-first design
- Accessibility - WCAG compliance
- Loading States - Smooth user experience
- Error Handling - Graceful error management
- Real-time Updates - Live data synchronization
# Run frontend tests
cd HRMS_Frontend
npm test
# Run backend tests
cd HRMS_Backend
npm test
# Run integration tests
npm run test:integration# Build frontend
cd HRMS_Frontend
npm run build
# Build backend (if applicable)
cd HRMS_Backend
npm run build# Backend (.env)
DATABASE_URL="file:./dev.db"
JWT_SECRET="your-jwt-secret"
GEMINI_API_KEY="your-gemini-api-key"
PORT=3000
# Frontend (.env)
VITE_API_URL="http://localhost:3000"- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request