“Smart HR Management System Documentation” by “Mina Samy” v2.0


Smart HR Management System

Created: 25/10/2024
By: Mina Samy
Email: minasamy792@gmail.com


Table of Contents

  1. Overview
  2. Key Features
  3. Technologies Used
  4. CSS Files
  5. JavaScript Files
  6. Database
  7. Blade
  8. Controller Files
  9. Model Files
  10. Sources and Packages
  11. Installation Guide
  12. User Guide

A) Overview - top

The Smart HR Management System is a comprehensive, user-friendly solution for streamlining HR processes across multiple organizations. It provides a modern and intuitive interface. The system is suitable for organizations of all sizes, offering tools for attendance tracking, employee management, overtime tracking, deductions, vacations, and payroll generation, and now supporting multi-company functionality, allowing each company to manage its own data independently within a single system. Each company can also configure its own internal policies such as late arrival deduction, half-day rules, working hours, working days, official holidays, and bonus hours, through a dedicated company policy page.


B) Key Features - top


C) Technologies Used - top


D) CSS Files Top

The system utilizes multiple CSS files to maintain structure and ensure a consistent style:

Path: public/dist/css


E) JavaScript Files - top

Path: public/dist/js


F) Database - top


This project uses a structured MySQL database, designed and managed via phpMyAdmin. It consists of interconnected tables, following relational database principles to ensure data integrity and scalability. The schema supports core functionalities such as user management, roles, employee data, attendance tracking, payroll, and more.


Tap here to open the ERD diagram



G) Blade - top

Path: resources/views

Path: resources/views/admins

Path: resources/views/backend


H) Controller Files - top

Path: app/Http/Controllers


I) Model Files - top

models used for the search functionality and the retrieving of data based on company_id and paginate of the pages

Path: app/Models


J) Sources and Packages - top


K) Installation Guide for (localhost) - top

Note: If you're installing the system on a live server (not localhost), you don't need all of these steps.

    Follow these clear, step-by-step installation instructions to set up your HR system on localhost:

    1. Download the Source Code: Download the ZIP file containing the source code of the HR system.
    2. Set Up Environment:
      1. Download Xampp or MAMP : for use localhost.
      2. Create a Database: Use your preferred database management tool (e.g., phpMyAdmin) to create a new database for the application.
      3. Configure (open) the .env File: Locate the .env file in the source code and update the database name and other (database credentials).
    3. Install Dependencies:

      Open your terminal of the project and run the following command:

      composer install

      if you don't have it

    4. Run Migrations and Seeders:

      After installing dependencies, execute the following command in the command line interface (CLI) of the project:

      php artisan migrate --seed
    5. Serve the Application:

      Start the Laravel development server by writing the command in the project terminal:

      php artisan serve
    6. Access the Application to start register:

      Open your web browser and navigate to your localhost:

      like: http://127.0.0.1:8000

    L) User Guide - top

      After Login:

      1. Add the Managers of the Company
      2. Add the Departments
      3. Add the Jobs of the Company
      4. Add Employees and HR

      Once departments and jobs are set up, you can proceed to add employees and HR personnel. Assign each employee to a specific job and department.

      5. Add your company policy in attendance settings

      Now, You’re Ready!

      Now you can start to manage attendance, estimate payroll, track deductions, and perform other HR operations efficiently.