Skip to content

Latest commit

 

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 

Repository files navigation

Angular 20 Enterprise HRMS & Employee Management System

Enterprise Human Resource Management Platform | Code With Jamshed

A production-inspired Human Resource Management System (HRMS) built with Angular 20 for managing employees, departments, attendance, leave, timesheets, payroll, performance, recruitment, documents, reports, and HR administration.

Built with Angular Signals, RxJS, Standalone Components, Reactive Forms, Angular CDK, Bootstrap, and SCSS, the application demonstrates scalable enterprise Angular architecture, reusable UI patterns, realistic HR workflows, and backend-ready frontend integration.

The platform covers the employee lifecycle from recruitment and employee management to attendance, leave, payroll, performance, and workforce analytics.


Demo Credentials

Email: admin@hrms.dev
Password: password

Screenshots

HR Dashboard

Angular 20 HRMS Dashboard

HR Dashboard - Dark Mode

Angular HRMS Dashboard Dark Mode

Employee Directory

Angular Employee Management System

Employee Details

Angular HRMS Employee Details

Organization

Angular HRMS Organization Management

Attendance Dashboard

Angular Attendance Management System

Leave Management

Angular Leave Management System

Leave Approval Workflow

Angular HRMS Leave Approval Workflow

Timesheets

Angular Employee Timesheet Management

Payroll Overview

Angular Payroll Management Dashboard

Performance Dashboard

Angular Employee Performance Management

Recruitment Pipeline

Angular Recruitment Applicant Tracking System

Documents

Angular HRMS Employee Document Management

Reports

Angular HRMS Reports and Workforce Analytics

Administration

Angular HRMS Administration and Role Management

Settings

Angular HRMS Settings

Project Overview

Angular Enterprise HRMS is an enterprise-style Angular 20 HRMS and Employee Management System designed to demonstrate maintainable, scalable, accessible, and responsive enterprise frontend architecture.

Instead of being a collection of unrelated CRUD screens, the application models connected HR workflows including employee lifecycle management, organization structure, attendance and attendance corrections, leave requests and approvals, weekly timesheets, payroll overview, performance reviews, recruitment/ATS, employee documents, reports, administration, notifications, and employee self-service.

This project is suitable for:

  • Angular portfolio demonstrations
  • Frontend developer interviews
  • Enterprise Angular architecture discussions
  • HRMS and employee-management project references
  • YouTube project walkthroughs
  • Freelance client showcases
  • Frontend system-design discussions

Tech Stack

Technology Purpose
Angular 20 Primary frontend framework
TypeScript Strongly typed application code
Standalone Components Modern Angular component architecture
Angular Signals Local and feature-level reactive state
RxJS Async workflows and service streams
Angular Router Navigation and lazy-loaded routes
Reactive Forms Business forms and validation
Angular CDK Drag-and-drop and interaction utilities
Bootstrap 5.3 Responsive layout utilities
SCSS Application styling
CSS Variables Theme and design tokens
Font Awesome Application icons
ApexCharts / Charts HR analytics visualization
Typed Mock Services Frontend data-access layer
Local Storage Demo session and preferences

User Roles

Role Primary Responsibility
Super Admin System configuration, users, roles and HR data
HR Admin / HR Manager Employees, departments, attendance, leave, recruitment and reports
Manager Team overview, approvals, timesheets and performance
Employee Self-service profile, attendance, leave, timesheets and documents
Payroll / Finance Viewer Payroll overview and selected reports

Frontend role checks are demonstration-only. Production authorization must also be enforced by a backend.


Angular HRMS Features

Authentication & Access

Login, forgot/reset password, OTP/verification UI, session-expired and access-denied pages, authentication guard, role-aware routes, current-user profile, and logout workflow.

HR Dashboard & Workforce Analytics

Workforce KPIs, active employees, employees on leave, new joiners, attendance, open positions, pending approvals, department distribution, employee growth, leave summary, people events, recent activity, and quick actions.

Employee Management System

Employee directory, add/edit employee, employee details, personal/employment/contact information, emergency contacts, department/manager information, compensation summary, documents, attendance/leave/performance summaries, activity timeline, search, filters, sorting, pagination, and employee status workflows.

Organization & Department Management

Departments, department details, job titles, teams, office locations, reporting hierarchy, department heads, and organization summaries.

Attendance Management System

Daily attendance, employee history, Clock In/Clock Out demo, date and department filters, attendance corrections, manager approval/rejection, and monthly summaries.

Statuses: Present, Absent, Late, Half Day, Work From Home.

Leave Management & Approval Workflow

Leave dashboard, balances, leave types, apply leave, employee requests, approvals, rejection comments, leave calendar, and date/employee filters.

Statuses: Pending, Approved, Rejected, Cancelled.

Employee Timesheet Management

Weekly timesheets, project/task association, billable/non-billable hours, submission, manager approval/rejection, and timesheet status summaries.

Payroll Management Overview

Employee payroll list, salary structure summary, earnings, deductions, net pay, month filters, payroll status, payslip preview UI, and payroll analytics.

Version 1 is a presentation/demo implementation and does not contain a real statutory payroll, tax, banking, or payment engine.

Employee Performance Management

Review cycles, employee reviews, goals/objectives, goal progress, ratings, manager feedback, performance distribution, and top-performer summaries.

Recruitment & Applicant Tracking System (ATS)

Job openings, candidate management, application pipeline, interview scheduling UI, notes, offer status, recruitment analytics, and Angular CDK drag-and-drop.

Candidate stages: AppliedScreeningInterviewOfferHired / Rejected.

Employee Document Management

Document center, categories, employee documents, upload placeholder, expiry tracking, expiring-document widgets, search, filters, and view/download placeholders.

HR Reports & Workforce Analytics

Workforce, headcount, department, attendance, leave, timesheet, payroll, performance, and recruitment reports with date/department filters, charts, summary cards, and export-ready UI.

Administration & RBAC UI

User management, roles, permissions, role-permission matrix, approval configuration placeholder, audit log, system notifications, and master-data configuration.

Settings & Employee Self-Service

Profile, preferences, Light/Dark/System theme, notifications, security, company settings, working hours, holiday calendar, and leave-policy placeholder.


Angular Enterprise HRMS Architecture

src/
├── app/
│   ├── core/
│   │   ├── guards/
│   │   ├── interceptors/
│   │   ├── services/
│   │   ├── models/
│   │   ├── constants/
│   │   ├── enums/
│   │   └── utils/
│   ├── shared/
│   │   ├── components/
│   │   ├── ui/
│   │   ├── directives/
│   │   ├── pipes/
│   │   └── validators/
│   ├── layout/
│   │   ├── auth-layout/
│   │   └── main-layout/
│   ├── features/
│   │   ├── auth/
│   │   ├── dashboard/
│   │   ├── employees/
│   │   ├── organization/
│   │   ├── attendance/
│   │   ├── leave/
│   │   ├── timesheets/
│   │   ├── payroll/
│   │   ├── performance/
│   │   ├── recruitment/
│   │   ├── documents/
│   │   ├── reports/
│   │   ├── administration/
│   │   └── settings/
│   ├── app.component.ts
│   ├── app.config.ts
│   └── app.routes.ts
├── assets/
├── environments/
└── styles/

Angular Signals & State Management

Angular Signals are used for local and feature-level state, while RxJS is used where asynchronous service workflows and stream semantics are more appropriate.

readonly employees = signal<Employee[]>([]);

readonly activeEmployees = computed(() =>
  this.employees().filter(employee => employee.status === 'Active')
);

Reactive Forms

readonly employeeForm = this.fb.nonNullable.group({
  firstName: ['', Validators.required],
  lastName: ['', Validators.required],
  email: ['', [Validators.required, Validators.email]],
  departmentId: ['', Validators.required],
  designation: ['', Validators.required],
  joiningDate: ['', Validators.required]
});

Lazy-Loaded Angular Routes

{
  path: 'employees',
  loadChildren: () =>
    import('./features/employees/employee.routes')
      .then(routes => routes.EMPLOYEE_ROUTES)
}

Major HR domains are lazy-loaded to keep the application modular and reduce the initial bundle size.


Responsive Angular HRMS Design

Designed for desktop, laptop, tablet, and mobile with:

  • Collapsible sidebar
  • Mobile navigation
  • Responsive data tables
  • Adaptive KPI cards
  • Mobile-friendly forms
  • Scrollable recruitment pipeline
  • Responsive notification and profile dropdowns

Light / Dark / System Theme

The application supports Light, Dark, and System preferences using CSS variables.

:root {
  --app-bg: #f8fafc;
  --surface: #ffffff;
  --text: #0f172a;
}

html.dark {
  --app-bg: #0f172a;
  --surface: #111827;
  --text: #f8fafc;
}

Backend-Ready Mock Data Architecture

Component
   ↓
Feature Store / Data Access
   ↓
Domain Service
   ↓
Mock Database
   ↓
Future REST API

Version 1.0.0 uses typed frontend mock services. The data-access layer can later be replaced by Spring Boot, Node/Express, NestJS, .NET, Firebase, or another REST backend without redesigning feature components.


Getting Started

Prerequisites

  • Node.js 20+
  • npm
  • Angular CLI 20
node -v
npm -v
ng version

Clone & Install

git clone https://github.com/Jamshed7664/angular-enterprise-hrms.git
cd angular-enterprise-hrms
npm install

Run

npm start

or:

ng serve

Open http://localhost:4200.

Production Build

npm run build

Suggested Portfolio / YouTube Demo Flow

  1. Login as HR Admin.
  2. Review workforce KPIs.
  3. Browse the Employee Directory.
  4. Add/edit an employee and inspect Employee Details.
  5. Review organization and departments.
  6. View attendance and demonstrate Clock In/Clock Out.
  7. Submit an attendance correction.
  8. Apply for leave and demonstrate approval/rejection.
  9. Review and approve weekly timesheets.
  10. Review payroll.
  11. Open performance reviews and goals.
  12. Demonstrate the recruitment pipeline and CDK drag-and-drop.
  13. Review employee documents.
  14. Open HR reports.
  15. Review the role-permission matrix and administration.
  16. Switch between Light/Dark/System themes.
  17. Demonstrate responsive/mobile behavior.

Development Roadmap

v1.0.0

  • Angular 20 + Standalone Components
  • Angular Signals + RxJS
  • Authentication and role-aware navigation
  • HR Dashboard
  • Employee and Organization Management
  • Attendance and correction workflow
  • Leave Management and approvals
  • Timesheets
  • Payroll Overview
  • Performance Management
  • Recruitment / ATS + CDK pipeline
  • Documents
  • Reports and Administration
  • Settings and notifications
  • Light/Dark/System theme
  • Typed mock data layer
  • Responsive UI

v1.1

  • Spring Boot backend
  • MySQL database
  • JWT authentication and refresh tokens
  • Server-side pagination
  • Real file upload
  • CSV/PDF export
  • Advanced analytics

v2.0

  • Production RBAC
  • Biometric attendance
  • Real payroll engine
  • Email/SMS notifications
  • WebSocket updates
  • Advanced audit reporting
  • Employee onboarding/offboarding
  • Expense and benefits management
  • Internationalization
  • Multi-company support

Security & Privacy

Use synthetic HR data only. Never commit real employee PII, payroll information, passwords, API keys, secrets, or private company data. Frontend role guards are for demonstration; production authorization must be enforced by the backend.


Project Goals

This project demonstrates:

  • Enterprise Angular architecture
  • Feature-based application design
  • Standalone Components
  • Angular Signals and RxJS
  • Reactive Forms
  • Lazy-loaded routes
  • Approval workflows
  • Role-aware UI
  • HR domain modeling
  • Responsive SaaS design
  • Angular CDK interactions
  • Backend-ready frontend architecture

GitHub SEO & Repository Metadata

Recommended Repository Description

Enterprise HRMS built with Angular 20 featuring employee management, attendance, leave, payroll, recruitment, performance, timesheets and HR analytics.

Recommended GitHub Topics

angular
angular20
typescript
hrms
hrms-project
human-resource-management
human-resource-management-system
employee-management
employee-management-system
attendance-management
leave-management
payroll
payroll-management
recruitment
applicant-tracking-system
performance-management
angular-signals
rxjs
reactive-forms
standalone-components
enterprise-application
admin-dashboard
responsive-design
dark-mode

Release

Tag: v1.0.0
Release Title: Angular Enterprise HRMS v1.0.0

First stable portfolio release featuring employee management, organization structure, attendance, leave, timesheets, payroll overview, performance management, recruitment/ATS, documents, reports, administration, and responsive Light/Dark/System themes.


Repository

angular-enterprise-hrms

Author

Jamshed Ahmad
Software Engineer | Frontend Developer

Brand: Code With Jamshed

Connect

GitHub:   https://github.com/Jamshed7664
LinkedIn: www.linkedin.com/in/jamshed-ahmad7664
YouTube:  https://www.youtube.com/@CodeWithJamshed

Support

If you find this project useful:

  • Star the repository
  • Fork the project
  • Share it with other developers
  • Follow Code With Jamshed
  • Subscribe for more Angular and full-stack projects

License

This project is intended for learning, portfolio presentation, demonstrations, and personal development. Add an MIT License if you want the repository to be publicly reusable.


Built with Angular 20 ❤️ by Code With Jamshed

Angular HRMS • Employee Management • Attendance • Leave • Payroll • Recruitment • Angular Signals

About

Enterprise HRMS built with Angular 20 featuring employee management, attendance, leave, payroll, recruitment, performance, timesheets and HR analytics.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors