Skip to content

A single-tenant employee payroll and timekeeping system built with Laravel 9 and Bootstrap 5.

License

Notifications You must be signed in to change notification settings

amattu2/payroll-management-system

Repository files navigation

Introduction

A comprehensive HR employee management and timekeeping system. Digitize timesheets, handle time-off requests, and automate standard onboarding procedures.

Abbreviated list of functionality:

  • Employee management
  • Linked employee accounts
  • Track clock-in/clock-out times
  • Finalize timesheets with automated notifications
  • Manage leave/time-off requests

Coming Soon:

  • Automate onboarding procedures with push notifications of hired/terminated employees
  • Pre-built reports and employee insights
  • Company/department closures and scheduling with notifications
  • Supervisor/Department tracking

Getting Started

Install both Composer and NPM dependencies.

composer install
npm install

Create a copy of the .env.example file and rename it to .env. Update the database credentials and application key.

cp .env.example .env

Run the database migrations and seeder.

php artisan migrate --seed
php artisan run:factories # Optional: Seed the database with dummy data
php artisan cache:clear # Clear the temporary DB cache

Build frontend the assets

npm run dev

Run the backend service

php artisan serve

Open your browser and navigate to http://localhost:8000. You can log in with the following credentials (default):

Previews

Overview Page

overview page

Employees Page

employee listing

employee

Timesheets

timesheet timecards

timesheet pdf

Leave/PTO Page

leaves time off page

To-Do

App

  • App Settings and Controls
  • Navigation search bar (e.g. Employees, Timesheets, ...)

Employees

  • Create a user account for a employee
  • Department assignments
  • Supervisor tracking (e.g. Joan reports to Barry)
  • Internal comments / Notes
  • Profile picture display
  • PTO cap and limit tracking
  • General profile editing
  • Employee Communication (e.g. Timesheets, Free form emails, PTO Rejections)
  • Time-Off Tracking / Requests

Payroll / Timesheets

  • Editing timesheet options (e.g. Period/Pay type)
  • Time card tracking
  • Time unit calculation by Day/Hours (including 1/4, 1/2, 3/4 days)
  • Exporting (PDF/Email)

Reports

  • Report Center
  • Statistics/Graphs on pages
  • Employee Statistics
  • Overview Statistics

Other

  • Block a user from logging in if their associated employee is not active
  • Heavy query caching (i.e. employees, timesheets)
  • Fix factories for tables with unique constraints (Timesheets, Timesheet Days)
  • Implement lang file for long/duplicated messages
  • When employees are terminated, reject all open PTO requests

Requirements & Dependencies

  • PHP 8+
  • Laravel 9.X+
  • MySQL
  • Bootstrap 5.X+

About

A single-tenant employee payroll and timekeeping system built with Laravel 9 and Bootstrap 5.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published