Resolve README.md merge conflict and finalize initial commit
AI-HRMS is an intelligent web-based Human Resource Management System designed to automate and simplify HR operations using Artificial Intelligence. The system manages employee data, recruitment, leave tracking, and performance evaluation efficiently. It also integrates an AI chatbot that assists HR personnel in real time
A production-ready, AI-powered HRMS platform built with modern technologies. Streamline recruitment, performance tracking, payroll, and employee management with unprecedented accuracy and efficiency.
- Employee Data Management - Centralized employee records and organizational structure
- Attendance Tracking - Real-time attendance monitoring with advanced analytics
- Payroll Processing - Automated payroll calculations with compliance features
- Performance Tracking - Data-driven performance evaluations and goal management
- Recruitment Management - AI-powered candidate screening and hiring workflow
- Real-time Processing - Instant data synchronization across all modules
- Resume Screening & Evaluation - Automated resume analysis and ranking using NLP
- Voice Interview AI - Intelligent voice-based candidate interviews with analysis
- Performance AI - AI-driven performance evaluation and feedback generation
- Predictive Analytics - Forecast attrition rates, hiring needs, and payroll trends
- Admin - Full system access and configuration
- Manager - Team and department oversight
- HR - HR operations and recruitment management
- Recruiter - Candidate screening and hiring
- Employee - Personal dashboard and profile management
- React 18 - UI library for building dynamic interfaces
- React Router 6 - Client-side routing (SPA mode)
- TypeScript - Type-safe development
- Tailwind CSS 3 - Utility-first CSS framework
- Vite - Fast build tool and dev server
- Radix UI - Unstyled, accessible UI components
- Recharts - Data visualization library
- Express.js - Web application framework
- Node.js - JavaScript runtime
- TypeScript - Type-safe backend code
- Vitest - Unit testing framework
- TailwindCSS - Styling system
- PostCSS - CSS transformation
- Prettier - Code formatting
- Node.js 18+
- pnpm (preferred package manager)
# Clone the repository
git clone <repository-url>
cd hrms-ai
# Install dependencies
pnpm install
# Start development server
pnpm devThe application will be available at http://localhost:8080
# Build for production
pnpm build
# Start production server
pnpm start
# Run tests
pnpm test
# Type checking
pnpm typecheck
# Format code
pnpm format.fixhrms-ai/
βββ client/
β βββ pages/ # Route components
β β βββ Index.tsx # Homepage
β β βββ Login.tsx # Login with role selection
β β βββ Dashboard.tsx # Main dashboard
β β βββ AITools.tsx # AI features showcase
β β βββ Employees.tsx # Employee management
β β βββ Recruitment.tsx # Recruitment & candidates
β β βββ NotFound.tsx # 404 page
β βββ components/
β β βββ ui/ # Pre-built UI components
β β βββ DashboardLayout.tsx # Dashboard wrapper
β β βββ PlaceholderPage.tsx # Placeholder for future pages
β βββ hooks/ # Custom React hooks
β βββ lib/ # Utility functions
β βββ App.tsx # Main app component & routing
β βββ global.css # Global styles & theme
β βββ vite-env.d.ts # Vite environment types
βββ server/
β βββ routes/ # API endpoints
β βββ index.ts # Server setup
β βββ node-build.ts # Production build config
βββ shared/
β βββ api.ts # Shared types & interfaces
βββ tailwind.config.ts # Tailwind configuration
βββ tsconfig.json # TypeScript configuration
- Background - Deep black (#000002)
- Primary - Electric blue (#3b82f6)
- Accent - Cyan/Sky blue (#0ea5e9, #06b6d4)
- Neutral - Dark grays for borders and muted text
- Foreground - Off-white for text (#fafbfc)
All UI components are built using:
- Radix UI primitives for accessibility
- Tailwind CSS for styling
- Custom hover and focus states
- Responsive design patterns
- JWT Authentication - Token-based authorization
- Role-Based Access Control - Fine-grained permissions
- Data Encryption - Sensitive data protection
- OAuth 2.0 Support - Third-party authentication
- Input Validation - Zod schema validation
- CORS Configuration - Cross-origin request handling
- Hero section showcasing HRMS features
- AI capabilities overview
- Enterprise features highlight
- Call-to-action buttons
- Role-based login selection
- Demo mode support
- Email/password authentication
- "Remember me" functionality
- Role-specific overview
- Key metrics and KPIs
- Growth trends visualization
- Department distribution charts
- AI insights section
- Quick action buttons
- Employee directory with search
- Employee statistics
- Department and status filtering
- Quick actions menu
- Open positions management
- Candidate pipeline tracking
- AI screening scores
- Interview stage management
- Resume screening tool
- Voice interview AI
- Performance evaluation AI
- Predictive analytics
- Interactive demos
The project uses Vitest for unit testing:
# Run tests
pnpm test
# Run tests with coverage
pnpm test -- --coverage
# Watch mode
pnpm test -- --watch- Supports 5,000+ concurrent employees
- Real-time data processing
- Optimized database queries
- Caching strategies
- Load balancing ready
- Responsive design for all devices
GET /api/employees # Fetch all employees
POST /api/employees # Create new employee
GET /api/employees/:id # Get employee details
PUT /api/employees/:id # Update employee
DELETE /api/employees/:id # Delete employee
GET /api/candidates # Fetch candidates
POST /api/candidates/screen # AI resume screening
GET /api/analytics # Get analytics data
POST /api/payroll/process # Process payroll
GET /api/ai/insights # Get AI insights
POST /api/ai/performance-eval # AI performance evaluation
# The app is configured for Netlify
# Push to GitHub and connect your repository
# Netlify will automatically build and deployCreate a .env file:
VITE_API_BASE_URL=http://localhost:8080
VITE_AI_API_KEY=your_ai_api_key
DATABASE_URL=your_database_url- Use TypeScript for type safety
- Follow existing component patterns
- Keep components small and focused
- Use custom hooks for logic
- Maintain consistent naming conventions
import { FC } from 'react';
import { Card } from '@/components/ui/card';
interface ComponentProps {
title: string;
children?: React.ReactNode;
}
const MyComponent: FC<ComponentProps> = ({ title, children }) => {
return (
<Card>
<h1>{title}</h1>
{children}
</Card>
);
};
export default MyComponent;- Create a new branch for your feature
- Make your changes with clear commit messages
- Test your changes thoroughly
- Submit a pull request with description
For issues or questions:
- Check the documentation
- Review existing issues
- Create a new issue with details
MIT License - feel free to use this project as a template
- Mobile app (React Native)
- Advanced analytics dashboard
- Integration with payroll systems
- Video interview recording
- Biometric attendance
- Blockchain for credential verification
- Multi-language support
- Custom workflow builder
- Advanced reporting engine
- Mobile push notifications
Built with β€οΈ for modern HR teams
Start managing your human resources with AI-powered intelligence today!