WorkForce_Hub

byMeet Kanteliya

Build a full-stack HR Management System (HRMS) web application with the following complete specifications: === PROJECT OVERVIEW === A modern, production-grade HRMS SaaS platform with 4 role-based portals: Super Admin, HR, Manager, and Employee. Dark + light mode. Premium UI feel like Linear.app meets Rippling. === TECH STACK === Frontend: Next.js 14, Tailwind CSS, Shadcn UI, Framer Motion, Recharts, React Hook Form Backend: FastAPI (Python), PostgreSQL, Redis Auth: JWT with refresh token rotation Deployment: Docker Compose + Nginx === ROLES & PERMISSIONS === SUPER ADMIN: - Manage entire organization - Create/delete HR and Manager accounts - View all analytics and reports - System settings and configuration - Audit logs of all actions HR: - Add/edit/offboard employees - Approve or reject leave requests - Run payroll for all employees - Generate HR reports - Manage departments and positions - Send announcements MANAGER: - View their team members only - Approve/reject team leave requests - Assign and track tasks for team - Write performance reviews - View team attendance EMPLOYEE: - View own profile and payslips - Apply for leaves - View assigned tasks - Check attendance history - View team announcements === CORE MODULES === 1. AUTH MODULE - Login page with smooth animation - JWT access + refresh token - Role-based redirect after login - Forgot password flow 2. DASHBOARD (role-specific) - Admin: org stats, headcount, payroll summary, recent activity - HR: pending leaves, new joiners, payroll status, department chart - Manager: team attendance today, pending approvals, task progress - Employee: my leaves balance, upcoming tasks, recent payslip 3. EMPLOYEE MANAGEMENT - Employee list with search, filter, sort by department/role/status - Employee profile page: personal info, documents, employment history - Add employee form with validation - Soft delete / offboarding flow - Export employee data as CSV 4. LEAVE MANAGEMENT - Employee applies for leave with date range + reason - Manager/HR approves or rejects - Leave balance tracker (casual, sick, earned) - Leave calendar view - Email notification on status change 5. ATTENDANCE - Daily attendance log per employee - Clock in / clock out (manual) - Monthly attendance summary table - Absent / present / late status - Manager can view full team 6. PAYROLL - HR inputs salary components: base, HRA, bonus, deductions - Auto calculate net salary - Generate payslip PDF per employee - Payroll history by month - Export payroll report 7. TASK MANAGEMENT - Manager assigns tasks to employees - Task: title, description, due date, priority, status - Employee updates task status - Kanban board view (Todo / In Progress / Done) - Task completion analytics 8. PERFORMANCE REVIEW - Manager writes quarterly review - Rating system (1-5) per skill - Employee views their review - Historical review archive 9. ANNOUNCEMENTS - HR posts company announcements - All employees see in dashboard - Filter by department 10. REPORTS & ANALYTICS - Headcount by department (bar chart) - Monthly attendance rate (line chart) - Leave utilization (pie chart) - Payroll cost over time (area chart) - Export reports as PDF/CSV === UI/UX REQUIREMENTS === - Dark mode default, light mode toggle - Sidebar navigation with icons - Smooth page transitions (Framer Motion) - Skeleton loading states - Toast notifications for actions - Responsive — works on mobile - Empty states with illustration - Consistent color system: Primary #6366F1 (indigo) Success #10B981 Warning #F59E0B Error #EF4444 Background dark: #0F0F0F Card dark: #1A1A1A === DATABASE SCHEMA === Tables needed: - users (id, name, email, password_hash, role, is_active) - employees (id, user_id, department_id, manager_id, position, salary, join_date, status) - departments (id, name, manager_id) - leaves (id, employee_id, type, start_date, end_date, reason, status, approved_by) - attendance (id, employee_id, date, clock_in, clock_out, status) - payroll (id, employee_id, month, basic, hra, bonus, deductions, net_salary, generated_at) - tasks (id, title, description, assigned_to, assigned_by, due_date, priority, status) - performance_reviews (id, employee_id, reviewer_id, quarter, year, ratings_json, comments) - announcements (id, title, content, department_id, created_by, created_at) === API ENDPOINTS === /auth/login POST /auth/refresh POST /employees GET POST PUT DELETE /employees/{id}/profile GET /leaves GET POST /leaves/{id}/approve PUT /leaves/{id}/reject PUT /attendance GET POST /payroll GET POST /payroll/{id}/payslip GET /tasks GET POST PUT DELETE /performance GET POST /announcements GET POST /reports/headcount GET /reports/attendance GET /reports/payroll GET === DEPLOYMENT === Docker Compose with: - frontend (Next.js) container - backend (FastAPI) container - postgres container - redis container - nginx reverse proxy Include .env.example file Include README with setup steps

LandingDashboardPayslipsDepartmentsAnnouncementsReportsTeamReviewsLeavesAudit LogsEmployeesAttendanceSettingsProfileTasksPayrollAnalyticsAccounts
Landing

Comments (0)

No comments yet. Be the first!

System Requirements

System Requirement Document
Page 1 of 5

WorkForce_Hub System Requirements Document

1. Introduction

WorkForce_Hub is a modern, production-grade HR Management System (HRMS) designed as a SaaS platform. It aims to provide a seamless experience for managing human resources through a web application with role-based portals for Super Admin, HR, Manager, and Employee. The system will feature both dark and light modes, offering a premium UI feel akin to Linear.app and Rippling.

2. System Overview

WorkForce_Hub is designed to streamline HR processes with a focus on clean role-based access and a smooth user interface. The system will be built using Next.js for the frontend, FastAPI for the backend, and PostgreSQL for data storage, with Redis for caching. Deployment will be managed using Docker Compose, ensuring a scalable and efficient architecture.

Page 2 of 5

3. Functional Requirements

  • As a Super Admin, I should be able to manage the entire organization.
  • As a Super Admin, I should be able to create and delete HR and Manager accounts.
  • As a Super Admin, I should be able to view all analytics and reports.
  • As a Super Admin, I should be able to configure system settings.
  • As a Super Admin, I should be able to view audit logs of all actions.
  • As an HR, I should be able to add, edit, and offboard employees.
  • As an HR, I should be able to approve or reject leave requests.
  • As an HR, I should be able to run payroll for all employees.
  • As an HR, I should be able to generate HR reports.
  • As an HR, I should be able to manage departments and positions.
  • As an HR, I should be able to send announcements.
  • As a Manager, I should be able to view my team members only.
  • As a Manager, I should be able to approve or reject team leave requests.
  • As a Manager, I should be able to assign and track tasks for my team.
  • As a Manager, I should be able to write performance reviews.
  • As a Manager, I should be able to view team attendance.
  • As an Employee, I should be able to view my own profile and payslips.
  • As an Employee, I should be able to apply for leaves.
  • As an Employee, I should be able to view assigned tasks.
  • As an Employee, I should be able to check my attendance history.
  • As an Employee, I should be able to view team announcements.
Page 3 of 5

4. User Personas

  • Super Admin: Oversees the entire system, manages accounts, and configures settings.
  • HR: Manages employee lifecycle, payroll, and departmental communications.
  • Manager: Oversees team performance, manages tasks, and approves leaves.
  • Employee: Engages with personal HR-related tasks and views announcements.

5. Core User Flows

  • Super Admin: Logs in -> Manages accounts -> Configures settings -> Views reports
  • HR: Logs in -> Manages employees -> Approves leaves -> Runs payroll -> Sends announcements
  • Manager: Logs in -> Views team -> Manages tasks -> Approves leaves -> Writes reviews
  • Employee: Logs in -> Views profile -> Applies for leave -> Checks tasks -> Views announcements

6. Visuals Colors and Theme

  • primary: #6366F1 (indigo)
  • primary_light: #A5B4FC
  • secondary: #10B981 (emerald)
  • accent: #F59E0B (amber)
  • highlight: #EF4444 (red)
  • bg: #0F0F0F (dark)
  • surface: rgba(26, 26, 26, 0.8)
  • text: #FFFFFF (white)
  • text_muted: #9CA3AF (gray)
  • border: rgba(255, 255, 255, 0.2)
Page 4 of 5

7. Signature Design Concept

The homepage of WorkForce_Hub will feature an interactive 3D office environment using @react-three/fiber and @react-three/drei. Users will navigate through a virtual office space where each portal (Super Admin, HR, Manager, Employee) is represented by a distinct area within the office. As users hover over different sections, they will experience smooth transitions and animations powered by Framer Motion, creating an engaging and immersive experience. Clicking on a section will zoom into that portal, providing a seamless transition into the respective dashboard.

8. Interaction Model & Motion Direction

The landing page will utilize a "parallax" interaction model, offering layered depth via scroll. Decorative layers will translate at different speeds, while real content scrolls naturally. This approach will provide a visually rich first impression, ideal for storytelling and engaging users from the outset. Internal pages will maintain a "static" interaction model to prioritize layout clarity and reading speed.

9. Non-Functional Requirements

  • The system must support both dark and light modes.
  • The application should be responsive and work seamlessly on mobile devices.
  • The system should ensure secure access control using JWT with refresh token rotation.
  • The application should handle up to 10,000 concurrent users without performance degradation.
Page 5 of 5

10. Tech Stack

  • Frontend: Next.js 14, Tailwind CSS, Shadcn UI, Framer Motion, Recharts, React Hook Form
  • Backend: FastAPI (Python)
  • Database: PostgreSQL, Redis
  • Auth: JWT with refresh token rotation
  • Deployment: Docker Compose + Nginx

11. Assumptions and Constraints

  • The system will not include third-party integrations at this stage.
  • The focus will be on implementing core modules with clean role-based access.
  • Deployment will be managed using Docker Compose, ensuring containerized environments.

12. Glossary

  • HRMS: Human Resource Management System
  • JWT: JSON Web Token
  • SaaS: Software as a Service
  • UI: User Interface
  • UX: User Experience
  • API: Application Programming Interface
  • CRUD: Create, Read, Update, Delete

This document outlines the comprehensive requirements for the WorkForce_Hub project, ensuring a robust and user-friendly HRMS platform.

Landing design preview
Landing: View Portal
Login: Sign In
Dashboard: View Summary
Profile: View Profile
Payslips: View Payslips
Leaves: Apply Leave
Leaves: View Leave Balance
Tasks: View Assigned Tasks
Tasks: Update Task Status
Attendance: Check History
Announcements: View Announcements
Reviews: View Performance Review