rayenbou / dashboard-bundle
A Symfony bundle to manage tickets from ticket bundle
Installs: 0
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 2
Forks: 0
Open Issues: 1
Type:symfony-bundle
Requires
- php: >=8.1
- api-platform/core: ^3.3
- lexik/jwt-authentication-bundle: ^3.0
- symfony/framework-bundle: >=6.4
- symfony/http-client: >=6.4
- symfony/uid: 7.1.*
This package is auto-updated.
Last update: 2025-07-05 18:37:16 UTC
README
This project provides a Symfony integration for a ticketing system, allowing for the fetching of individual tickets and lists of tickets from a specified API. It utilizes the Symfony APIplateform to expose an API and handles authentication through JWT token.
This project exist to be use with Ticket Bundle.
The purpose of this bundle is to provide an easy way to integrate ticketing system in any app.
The DashboardBundle part can be installed on your app, while the TicketBundle part can be installed on any other app.
This documentation provides a step-by-step guide to setting up the dashboard environment for your project.
Right now the project is in Alpha and currently don't have any recipe but it might change soon.
How to use it
Go to /dashboard/ticket/
.
And then you can :
- Create an user with an auto-generated token as password.
- Give this token to the app hosting the Ticket Bundle.
- Receive ticket, answer through a messenger-like conversation.
- Close/open ticket as you wish.
Initial Setup
-
Composer
composer require rayenbou/dashboard-bundle
-
Security Setup
Start by setting up the security component:
php bin/console rayenbou:security
-
Routing Configuration
Next, configure the routing for the dashboard by creating or updating the config/routes/rayenbou_dashboard.yaml file with the following content:
#config/routes/rayenbou_dashboard.yaml rayenbou_dashboard: resource: "@RayenbouDashboardBundle/Resources/config/routing.yaml"
-
JWT Configuration
For JWT authentication, you need to generate a private and a public key. First, create a directory for JWT:
mkdir -p config/jwt
Then, generate the private key:
openssl genpkey -out config/jwt/private.pem -aes256 -algorithm rsa -pkeyopt rsa_keygen_bits:4096
And generate the public key from the private key:
openssl pkey -in config/jwt/private.pem -out config/jwt/public.pem -pubout
Important
Remember to replace the passphrase with your clear text passphrase in the configuration.
-
Database Setup
If your project does not have a database configured yet, you can create it and update the schema with the following commands:
php bin/console d:d:c php bin/console doctrine:schema:update --force
Tests
Unit tests and Integration tests are on their way.
Evolution
- Login, Post and Patch throttling to add security.
- Possibility to override all templates and Controller.
Contributing
Contributions to this project are welcome. Please ensure to follow the existing coding style and add unit tests for any new or changed functionality.
Please use PHPstan
and PHP-CS-FIXER
.
License
This project is licensed under the MIT License - see the LICENSE file for details.