A comprehensive HR management system with backend API, web admin portal, and mobile employee app.
mobile:
This is a monorepo containing three interconnected applications:
mh_hr_employee_projects/
βββ mh_hr_employee_dotnet_backend/ # .NET 8.0 Web API Backend
βββ mh_hr_employee_react_web/ # React Web Admin Portal
βββ mh_employee_flutter_app/ # Flutter Mobile Employee App
βββ CLAUDE.md # Detailed project documentation
βββ README.md # This file
Directory: mh_hr_employee_dotnet_backend/
A RESTful API backend built with ASP.NET Core, featuring:
- JWT authentication
- Clean Architecture
- SQL Server database
- Firebase push notifications
- Document management, leave tracking, equipment requests, and more
π View Backend Documentation
Directory: mh_hr_employee_react_web/my-react/
Modern React web application for HR administrators:
- User & staff management
- Approve/reject leave requests
- Equipment request management
- Document uploads
- Training course management
π View Web Admin Documentation
Directory: mh_employee_flutter_app/
Flutter mobile app for employees (Android/iOS):
- View documents & company updates
- Apply for leave
- Request equipment
- View training courses
- Check attendance
- Modern purple gradient UI with dark/light mode
π View Mobile App Documentation
cd mh_hr_employee_dotnet_backend
dotnet restore
dotnet build React.sln
dotnet run --project React.csproj
# API runs on:
# - HTTP: http://localhost:5000
# - HTTPS: https://localhost:7106
# - Swagger: https://localhost:7106/cd mh_hr_employee_react_web/my-react
npm install
npm run dev
# Web admin runs on: http://localhost:5173cd mh_employee_flutter_app
flutter pub get
flutter run
# Runs on connected Android/iOS device or emulatorβββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Mobile App (Flutter) β
β Employee-facing features & self-service β
ββββββββββββββββββββββββββ¬βββββββββββββββββββββββββββββββββββββ
β
β HTTPS/REST API
β JWT Authentication
β
ββββββββββββββββββββββββββΌβββββββββββββββββββββββββββββββββββββ
β Backend API (.NET 8.0) β
β - JWT Auth - Document Management β
β - SQL Server - Leave Tracking β
β - Firebase - Equipment Requests β
ββββββββββββββββββββββββββ²βββββββββββββββββββββββββββββββββββββ
β
β HTTPS/REST API
β JWT Authentication
β
ββββββββββββββββββββββββββ΄βββββββββββββββββββββββββββββββββββββ
β Web Admin Portal (React) β
β Admin-facing features & management β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
- .NET 8.0 SDK - For backend API
- Node.js 16+ - For React web admin
- Flutter 3.5.4+ - For mobile app
- SQL Server - Database (local or remote)
- Firebase (optional) - For push notifications
- Users log in via web or mobile app
- Backend validates credentials and returns JWT token
- Token is stored (localStorage for web, secure storage for mobile)
- All subsequent API requests include the token in headers
- Backend validates token and processes requests
- Token expires after 24 hours (configurable)
- CLAUDE.md - Comprehensive development guide with architecture details, conventions, and examples
- README.md (this file) - Monorepo overview and quick start
- Backend README - API setup, endpoints, deployment
- Web Admin README - React app setup, features, deployment
- Mobile App README - Flutter setup, design system, APIs
- Backend CLAUDE.md - Backend-specific development guide
- TEST_AND_FINISH.md - React testing guide
- QUICK_REFERENCE.md - Common commands and patterns
- REFACTORING.md - Architecture refactoring notes
- View company documents and updates
- Apply for annual/medical leave
- Request IT equipment
- View training courses and upload certificates
- Track attendance
- View company calendar and events
- Social feed (moments)
- Manage users and departments
- Approve/reject leave requests
- Manage equipment requests
- Upload company documents
- Create training courses
- View analytics and reports
- Manage staff directory
- JWT-based authentication
- Role-based access control (super-admin, department-admin, user)
- File upload/download
- Push notifications (Firebase)
- Email notifications
- PDF generation and viewing
- Real-time data updates
# Clone repository
git clone <repository-url>
cd mh_hr_employee_projects
# Setup backend
cd mh_hr_employee_dotnet_backend
# Configure appsettings.json (see backend README)
dotnet restore
# Setup web admin
cd ../mh_hr_employee_react_web/my-react
npm install
# Setup mobile app
cd ../../mh_employee_flutter_app
flutter pub get# Terminal 1: Backend API
cd mh_hr_employee_dotnet_backend
dotnet run --project React.csproj
# Terminal 2: Web Admin
cd mh_hr_employee_react_web/my-react
npm run dev
# Terminal 3: Mobile App
cd mh_employee_flutter_app
flutter run- Backend API Swagger: https://localhost:7106/
- Web Admin Portal: http://localhost:5173
- Mobile App: On connected device/emulator
See mh_hr_employee_dotnet_backend/appsettings.json:
- Database connection string
- JWT secret key and settings
- Firebase service account path
- SMTP email settings
See mh_hr_employee_react_web/my-react/.env.development:
- Backend API URL
See mh_employee_flutter_app/lib/services/api_service.dart:
- Backend API base URL
- Timeout settings
- Database connection failed: Check SQL Server is running and connection string is correct
- JWT validation failed: Verify JWT key matches in config and is at least 32 characters
- See Backend README for more
- API connection failed: Ensure backend is running on http://localhost:5000
- 401 errors: Clear localStorage and login again
- See Web Admin README for more
- API not connecting: Check
api_service.darthas correct backend URL - Build errors: Run
flutter clean && flutter pub get - See Mobile App README for more
| Component | Status | Description |
|---|---|---|
| Backend API | β Production Ready | Clean Architecture, fully documented |
| Web Admin Portal | β Production Ready | Modern React app with feature-based structure |
| Mobile App | β Production Ready | Modern UI with purple gradient theme |
| Database | β Ready | SQL Server with multiple contexts |
| Authentication | β Implemented | JWT with role-based access |
| Documentation | β Complete | Comprehensive README files for all projects |
- Follow the architecture patterns described in CLAUDE.md
- Write clean, documented code
- Test thoroughly before committing
- Update relevant documentation
- Follow naming conventions and code style
Proprietary - MH HR Employee Management System
- Backend setup: See mh_hr_employee_dotnet_backend/README.md
- Web admin setup: See mh_hr_employee_react_web/README.md
- Mobile app setup: See mh_employee_flutter_app/README.md
- Architecture & conventions: See CLAUDE.md
Last Updated: 2025-11-16










