Skip to content

DilipGhawade/react-hrms-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

HRMS Application

Project Overview

The Human Resource Management System (HRMS) is a comprehensive web application designed to streamline and automate HR processes within an organization. This application provides a user-friendly interface for managing employee data, authentication, and various HR operations. The HRMS application enhances organizational efficiency by centralizing employee information, automating routine HR tasks, and providing powerful analytics for data-driven decision making.

This React-based solution offers an intuitive user experience while maintaining robust security and performance standards. It's designed to scale with your organization and can be customized to meet specific business requirements.

Key Features

  • User Authentication: Secure login and signup functionality with role-based access control
  • Dashboard: Centralized view of HR metrics and important information with customizable widgets
  • Employee Management: Tools for managing employee records, profiles, documents, and information
  • Leave Management: System for employees to request time off and for managers to approve/reject requests
  • Attendance Tracking: Monitor employee attendance, work hours, and overtime
  • Payroll Management: Calculate and manage employee salaries, deductions, and tax information
  • Performance Evaluation: Tools for setting goals, conducting reviews, and tracking employee performance
  • Recruitment Module: Track job openings, applications, and manage the hiring workflow
  • Training & Development: Manage employee training programs and career development paths
  • Reporting & Analytics: Generate custom reports and visualize HR data for better insights
  • Responsive Design: Mobile-friendly interface accessible across devices
  • Notification System: Real-time alerts and notifications for important updates and actions

Technology Stack

  • Frontend:
    • React.js 18.x
    • CSS3 with Sass/SCSS
    • Material-UI components
    • Responsive design with CSS Grid and Flexbox
  • State Management:
    • Redux (with Redux Toolkit)
    • React Context API for local state
  • Authentication:
    • JWT-based authentication
    • Secure HTTP-only cookies
    • Role-based access control
  • API Integration:
    • RESTful API services
    • Axios for HTTP requests
    • React Query for data fetching and caching
  • Build Tools:
    • Create React App
    • npm/yarn package management
    • Webpack for bundling
  • Testing:
    • Jest for unit testing
    • React Testing Library for component testing
    • Cypress for end-to-end testing

Installation and Setup

Prerequisites

  • Node.js (v14.x or later)
  • npm (v6.x or later) or yarn (v1.22.x or later)
  • Git

Installation Steps

  1. Clone the repository:

    git clone https://github.com/yourusername/hrms-app.git
    cd hrms-app
  2. Install dependencies:

    npm install
    # or
    yarn install
  3. Set up environment variables:

    • Create a .env file in the root directory
    • Add necessary environment variables (see .env.example for reference)
  4. Start the development server:

    npm start
    # or
    yarn start
  5. Build for production:

    npm run build
    # or
    yarn build

Project Structure

hrms-app/
├── public/               # Static files
│   ├── index.html        # HTML template
│   ├── favicon.ico       # Favicon
│   └── ...               # Other static assets
├── src/                  # Source code
│   ├── assets/           # Images, fonts, etc.
│   ├── components/       # Reusable UI components
│   │   ├── common/       # Common UI components
│   │   ├── dashboard/    # Dashboard-specific components
│   │   ├── employees/    # Employee management components
│   │   └── ...           # Other component directories
│   ├── contexts/         # React Context providers
│   ├── hooks/            # Custom React hooks
│   ├── layouts/          # Page layout components
│   ├── pages/            # Page components
│   ├── redux/            # Redux store, slices, actions
│   ├── services/         # API services and utilities
│   ├── styles/           # Global styles and themes
│   ├── utils/            # Utility functions
│   ├── App.js            # Main App component
│   ├── index.js          # Application entry point
│   └── routes.js         # Application routes
├── .env                  # Environment variables
├── .gitignore            # Git ignore file
├── package.json          # Project dependencies and scripts
└── README.md             # Project documentation

This project was bootstrapped with Create React App.

Available Scripts

In the project directory, you can run:

npm start

Runs the app in the development mode.
Open http://localhost:3000 to view it in your browser.

The page will reload when you make changes.
You may also see any lint errors in the console.

npm test

Launches the test runner in the interactive watch mode.
See the section about running tests for more information.

npm run build

Builds the app for production to the build folder.
It correctly bundles React in production mode and optimizes the build for the best performance.

The build is minified and the filenames include the hashes.
Your app is ready to be deployed!

See the section about deployment for more information.

npm run eject

Note: this is a one-way operation. Once you eject, you can't go back!

If you aren't satisfied with the build tool and configuration choices, you can eject at any time. This command will remove the single build dependency from your project.

Instead, it will copy all the configuration files and the transitive dependencies (webpack, Babel, ESLint, etc) right into your project so you have full control over them. All of the commands except eject will still work, but they will point to the copied scripts so you can tweak them. At this point you're on your own.

You don't have to ever use eject. The curated feature set is suitable for small and middle deployments, and you shouldn't feel obligated to use this feature. However we understand that this tool wouldn't be useful if you couldn't customize it when you are ready for it.

Learn More

You can learn more in the Create React App documentation.

To learn React, check out the React documentation.

Code Splitting

This section has moved here: https://facebook.github.io/create-react-app/docs/code-splitting

Analyzing the Bundle Size

This section has moved here: https://facebook.github.io/create-react-app/docs/analyzing-the-bundle-size

Making a Progressive Web App

This section has moved here: https://facebook.github.io/create-react-app/docs/making-a-progressive-web-app

Advanced Configuration

This section has moved here: https://facebook.github.io/create-react-app/docs/advanced-configuration

Deployment

This section has moved here: https://facebook.github.io/create-react-app/docs/deployment

npm run build fails to minify

This section has moved here: https://facebook.github.io/create-react-app/docs/troubleshooting#npm-run-build-fails-to-minify

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published