The MyLava (Employee Management System) is a web application designed to manage employee attendance, leave applications, admin messages and approvals. It offers a user-friendly interface with distinct functionalities for both employees and administrators. This system is built using Laravel for the backend, with Bootstrap5 and jQuery for the frontend.
Screen.Recording.2024-08-02.at.6.30.52.PM.mov
- Attendance Tracking: Employees can view and manage their attendance records.
- Leave Application: Employees can apply for leave, specifying the type and duration.
- Password Reset: Users can reset their passwords if forgotten.
- Messages: Employees can give reply to messages from admin. Employees cannot send direct messages to admin & other employees.
- Compensatory Leave: Users can apply for compensatory leaves. Compoffs generate automatically based on attendance, if the employee is working on a holiday then a compoff will generate for them which can be used later to writeoff a previous leave or take a leave which will not be deducted from the employee's leave balance.
- Admin Attendance Management: Admins can view and manage attendance records for all employees.
- Leave Approval: Admins can view and approve leave applications submitted by employees who report to them.
- Apply Leave for Employees: Admins can apply leave on behalf of their reporting employees.
- Messages: Admins can send messages to employees for a particular date from Admin Attendance.
- Compensatory Leave Approval: Admins can Approve/Reject compensatory leaves applied by employees.
- Backend: Laravel, PHP
- Frontend: Bootstrap 5, jQuery, JavaScript
- Database: MySQL
- API Testing: Postman
-
Clone the Repository
git clone https://github.com/obiwan04kanobi/HR-Management-System.git cd HR-Management-System/WebApp
-
Install Dependencies
composer install npm install
-
Configure Environment
- Copy the
.env.example
to.env
- Update the
.env
file with your database and mail server details.
- Copy the
-
Run Migrations
php artisan migrate
-
Run the Application
php artisan serve
- Employees and Admins can log in using their email addresses.
- Passwords are stored securely using encryption.
- Dashboard: The landing page for logged-in users.
- Attendance: Displays the attendance records for the logged-in employee.
- Admin Attendance: Accessible only to admins, shows the attendance records for all employees.
- Leave Application: Form for employees to apply for leave.
- Approve Leave: Accessible only to admins, allows leave approval for reporting employees.
- Reset Password: Allows users to reset their passwords.
- Admins are determined based on the
report_to
attribute in the employees' data. - Only admins can access the "Admin Attendance" and "Approve Leave" sections.
We welcome contributions from the community. Please follow these steps to contribute:
- Fork the repository.
- Create a new branch with a descriptive name.
git checkout -b feature/your-feature-name
- Make your changes and commit them with clear messages.
git commit -m "Add feature X"
- Push to your forked repository.
git push origin feature/your-feature-name
- Open a Pull Request and describe your changes in detail.
This project is licensed under the MIT License. See the LICENSE file for details.
- Laravel : The PHP framework for web artisans.