ENGINEERING CASE STUDY · BUSINESS APPLICATIONS
Employee Management System
Engineering case study.
LARAVEL 10 · SPLADE · VUE 3 · TAILWIND CSS · VITE · SPATIE/LARAVEL-PERMISSION · MYSQL · LARAVEL DUSK
A Laravel and Splade admin for employee records, locations and role-based access.
- Role
- Full stack developer
- Type
- Implemented in small companies
- Status
- In use to manage employees
- Source
- Base project public; client-modified components private
01 / OVERVIEW
The project
An application that lets an organisation keep and maintain its employee records. The admin area provides searchable, sortable tables and forms for employees, departments and locations, and screens for managing users, roles and permissions. It was implemented in small companies to manage their employees. The public repository contains the base project only; the components completed or modified for those companies are privately owned and cannot be shared.
02 / ARCHITECTURE
How it fits together
How an admin user reaches employee records through role-protected screens.
USER
Admin user
Signs in and must hold the admin role to reach the admin area.
Sends to: Roles & permissions
Based on the published repository.
03 / CONTRIBUTION
My contribution
- Modelled employees with department, country, state and city relationships, plus birth and hire dates.
- Built admin resources for employees, departments, countries, states and cities, and for users, roles and permissions.
- Implemented role-based access with spatie/laravel-permission, so the whole admin area requires the admin role.
- Built data tables with Splade and spatie/laravel-query-builder, with sorting, searching, pagination, bulk actions and exports.
04 / ENGINEERING
Engineering notes
- Splade lets Blade views behave like a Vue single-page interface without a separate API layer, which kept the admin quick to build.
- Table and form definitions live in their own classes, so each resource stays small and consistent.
- Authorization is handled by roles and permissions in the database rather than hard-coded checks.
- Dusk browser testing and PHPUnit are configured for the project.
TECHNOLOGY
Tools selected for the work.
- Laravel 10. A structured framework with Eloquent relationships, validation and policies, well suited to record-heavy business software that has to stay maintainable.
- Splade and Vue 3. Splade gives Blade pages the feel of a single-page app, with modals, tables and forms, without building and maintaining a separate API and frontend, which kept delivery quick for small companies.
- spatie/laravel-permission. Database-driven roles and permissions mean each company can control who sees and changes employee data without code changes.
- spatie/laravel-query-builder. Provides filtering, sorting and searching on large employee lists in a consistent, safe way.
- MySQL, Tailwind CSS and Vite. A reliable relational store for employee, department and location data, with a fast build pipeline and consistent styling.
- Laravel Dusk and PHPUnit. Browser and unit tests check that critical admin flows keep working as the system changes.