A comprehensive Human Resources management system designed to streamline employee administration, visualize organizational structure, and foster company culture through social features.
WorkOps is a modern web application that transforms standard HR tasks into an interactive and data-driven experience. It combines traditional employee management with social recognition features and powerful analytics.
Key Capabilities:
- π₯ Comprehensive Employee Profiles: Manage personal details, emergency contacts, documents, and notes.
- π Interactive Dashboard: Real-time data visualization for headcount, salary trends, and department breakdowns.
- β€οΈ Social Recognition: "Give Thanks" feed to foster company culture with likes and comments.
- βοΈ Admin Control: Granular permission settings for dashboard visibility, menu access, and system defaults.
- π Time Management: Robust Time Entry and Time Off request systems with approval workflows.
- π΄ Holiday Management: Configurable company holidays and calendar integration.
- π± Responsive Design: Fully responsive interface built with Material-UI.
| All Associates | Associate Profile |
|---|---|
![]() |
![]() |
| New Associate |
|---|
![]() |
| Time Entry | Time Off Requests |
|---|---|
![]() |
![]() |
| Time Entry Approvals | Time Off Approvals |
|---|---|
![]() |
![]() |
| Hierarchy | My Team |
|---|---|
![]() |
![]() |
| All Thanks | Give Thanks |
|---|---|
![]() |
![]() |
| Admin Dashboard | Task Management |
|---|---|
![]() |
![]() |
- Secure login and registration system.
- Password management (Change Password, Forgot Password flows).
- Automated user account creation for new employees.
- Role-based access control (Admin vs Standard User).
- Detailed Menu Permission system to control sidebar visibility by Title or Department.
- Headcount Metrics: Total employed, active vs terminated.
- Financial Analytics: Average salary tracking and history.
- Visual Graphs: Department and Office distribution charts.
- Timelines: Upcoming birthdays and work anniversaries.
- Configurable Widgets: Admin-controlled visibility for sensitive widgets.
- Profile Management: Upload profile pictures, manage contact info.
- Document Repository: Upload and categorize associate documents.
- Org Chart: Visual hierarchy and "My Team" views.
- Status Tracking: Active/Terminated status management.
- Time Entry: Employees can log hours with overtime calculation.
- Time Off: PTO requests with balance tracking.
- Holiday Management: Admin-managed company holidays appear on calendars.
- Approvals: Dedicated approval interfaces for Managers, Head of Departments, and CEO.
- Give Thanks Feed: Public recognition board.
- Interactions: Like and comment on recognition posts.
- Notifications: Alerts for new interactions and system events.
- Approval Workflows: Tasks for salary increases and title promotions.
- System Settings: Configurable default passwords and categories.
- Permission Management: Control widget and menu visibility.
- Database Management: Add/Edit Offices, Departments, and other metadata.
- React 17 - UI library
- Vite - Build tool
- React Router v6 - Client-side routing
- Context API - Global state (Auth, Associates, Notifications)
- Local Storage - Session persistence
- Material-UI (MUI) - Enterprise-grade UI component library
- MUI Icons - Iconography
- Framer Motion - Animations and transitions
- Recharts - Composable charting library
- React ApexCharts - Interactive visualizations
- React Big Calendar - Calendar views for Time Off
- Formik & Yup - Form handling and validation
- Moment.js / Date-fns - Date manipulation
- React Dropzone - File uploads
- Node.js (v14 or higher)
- Docker & Docker Compose (for full stack)
- Go 1.21+ (if running backend locally without Docker)
-
Clone the repository
git clone <repository-url>
-
Start the Backend (Required) The frontend requires the backend API to be running.
# From the root directory docker compose up --build -d apiThe backend will start on
http://localhost:8081 -
Install Frontend Dependencies
cd frontend npm install -
Start the Frontend Development Server
npm start
-
Open Your Browser Navigate to
http://localhost:3000
To start everything (Frontend + Backend + DB) with one command:
docker compose up --buildfrontend/
βββ public/ # Static assets (images, favicon)
βββ src/
β βββ assets/ # Images and demo screenshots
β βββ components/ # Reusable UI components
β β βββ Associate/ # Associate-related components
β β βββ Graphs/ # Dashboard charts
β β βββ Tasks/ # Approval task components
β β βββ Thanks/ # Social feed components
β βββ layouts/ # Page layouts (Dashboard, LogoOnly)
β βββ pages/ # Main page views
β β βββ Admin/ # System configuration
β β βββ Approvals/ # Time Entry & Time Off Approvals
β β βββ Home/ # Dashboard
β β βββ Login/ # Auth pages
β β βββ MyTeam/ # Team views
β β βββ TimeOff/ # Time Off management
β βββ utils/ # Utilities and Helpers
β β βββ context/ # React Context definitions
β βββ routes.js # Route definitions
β βββ theme/ # MUI Theme configuration
β βββ App.js # Root component
βββ package.json # Dependencies
βββ README.md # This file
The frontend connects to the Go backend. By default, it expects the backend at http://localhost:8081.
Admin configuration features (Dashboard visibility, Default passwords, Menu permissions) are available in the Admin tab of the application.
This project is licensed under the MIT License - see the LICENSE file for details.
Richie Zhou
- GitHub: @arunike













