Laravel Help Desk
--
https://github.com/devaslanphp/help-desk
Help Desk is a Laravel based project, that let you manage your support tickets and communicate with your customers, with a beautiful and simple to use platform.
Help Desk is based on the latest version of Laravel and many other Open Source packages and technologies.
Version 2
Take a look to the a newer version containing the same option and more:
Prerequisites
The application is developed using Docker to make it simple to you to quick start development.
So before executing the application make sure you installed docker (https://www.docker.com/).
Installation
Follow the below steps to install and serve the application:
- Clone the project
git clone https://github.com/devaslanphp/help-desk.git
- Install dependencies:
- Back dependencies
composer install
- Front dependencies
npm install
3. Install docker container ./vendor/sail/bin up -d
4. Database migration: using the docker terminal for laravel.test-1 container run this command php artisan migrate
5. Database seed: using the docker terminal for laravel.test-1 container run this command php artisan db:seed
6. Optional if you wan’t some demo data:
- Visit the PhpMyAdmin configured in docker compose
http://127.0.0.1:8080/
- Use the database
help_desk
- Import the SQL script file
{APP_ROOT}/database/help_desk.sql
7. Before you can serve the project, you need to build assets:
- For development env you can use
npm run dev
- For production env you need to build asset for prod env with
npm run build
Important: If you used the demo data, you can use the following user accounts:
- Administrator (Email: darkvador@gmail.com, Password: Passw@rd)
- Customer (Email: janedoe@gmail.com, Password: Passw@rd)
- Employee (Email: johndoe@gmail.com, Password: Passw@rd)
That’s it, now you can visit http://localhost to use the Help Desk application.
Functionnalities
The Help Desk application comes with a lot of features since its first version:
- A full Authentication system: Login, Forgot / recover password
- Projects management: You can create and manage multiple projects in the same instance
- Tickets management: You can manage tickets with multiple criterias (types, statuses, priorities, …) and assign them to users
- Kanban Board: You can also manage your tickets as Kanban Board
- Users management: You can administrate your application by managing users having access to it with multiple roles
- Notifications: A basic notifications system is set on the application to send notification as emails to users and also seeing them on the application in a dedicated page
I let you test the application for more information on these different features.
Framework & Plugins
The Help Desk application is based on Laravel and many other plugins & packages, the main ones are:
Languages
- PHP 8+
- HTML / CSS / JavaScript
- SQL (MySQL): but you can change it as you like
Framework
- Laravel 9.x (https://laravel.com/)
Plugins & Packages
- Filament Forms, Tables & Notifications 2.x (https://filamentphp.com/)
- Filament Kanban Board (https://github.com/invaders-xx/filament-kanban-board)
- Livewire 2.x (https://laravel-livewire.com/)
- Tailwind CSS 3.x (https://tailwindcss.com/)
- Tailwind CSS components — Flowbite 1.x (https://flowbite.com/)
- jQuery 3.x (https://jquery.com/)
- Alpine JS 3.x (https://alpinejs.dev/)
- Laravel Vite 3.x (https://laravel-vite.dev/)
- Chart JS 3.x (https://www.chartjs.org/)
- Font Awesome 6.x Free (https://fontawesome.com/)
Contributions
All contributions are welcome, ideas, code, tickets, … ALL :)
Links
- Online demo application: http://laravel-help-desk.herokuapp.com
- Full documentation: https://devaslanphp.github.io/help-desk
- Github repository: https://github.com/devaslanphp/help-desk
- Sponsor me, of course if you like my Open-Source repositories: https://github.com/sponsors/heloufir
Enjoy it!