Update project dependencies and enhance documentation

- Added `barryvdh/laravel-dompdf` to `composer.json` for PDF generation capabilities.
- Updated `boost.json` to include `tailwindcss-development` in skills.
- Modified `package.json` and `package-lock.json` to upgrade Tailwind CSS and related packages.
- Improved README.md for clarity and corrected French language errors.
- Created design system documentation for Filament components.
- Added new Filament pages for Dashboard and Documentation with dynamic content loading.
- Enhanced TablesExplorer functionality with improved table and column management.
This commit is contained in:
2026-02-20 14:16:24 +01:00
parent 4aef33f270
commit 657c5ad5e3
46 changed files with 3318 additions and 857 deletions

View File

@@ -1,14 +1,13 @@
# API Logistics
Application Laravel 12 de test pour comprendre et documenter l'API Logistics (Flex/ESI Gescom). Elle fournit un dashboard Filament v5 permettant d'interroger les differents endpoints de l'API.
Application Laravel 12 de test pour comprendre et documenter l'API Logistics (Flex/ESI Gescom). Elle fournit un dashboard Filament v5 permettant d'interroger les différents endpoints de l'API.
## Prerequis
## Prérequis
- PHP 8.4+
- Composer
- Node.js et npm
- MySQL
- Laravel Herd (recommande)
## Installation
@@ -23,9 +22,9 @@ php artisan key:generate
## Configuration
### Base de donnees
### Base de données
Creer une base de donnees MySQL nommee `api_logistics`, puis configurer le fichier `.env` :
Créer une base de données MySQL nommée `api_logistics`, puis configurer le fichier `.env` :
```
DB_CONNECTION=mysql
@@ -36,7 +35,7 @@ DB_USERNAME=root
DB_PASSWORD=
```
Executer les migrations :
Exécuter les migrations :
```bash
php artisan migrate
@@ -44,7 +43,7 @@ php artisan migrate
### API Logistics
Configurer la connexion a l'API Logistics dans le fichier `.env` :
Configurer la connexion à l'API Logistics dans le fichier `.env` :
```
LOGISTICS_API_BASE_URL=http://tse-10-test.esiweb.pro
@@ -53,40 +52,41 @@ LOGISTICS_API_FOLDER=esigescom
```
- **LOGISTICS_API_BASE_URL** : URL de base du serveur Logistics
- **LOGISTICS_API_KEY** : Cle API transmise via le header `X-API-KEY`
- **LOGISTICS_API_FOLDER** : Nom du dossier (en minuscules) utilise dans les routes de l'API
- **LOGISTICS_API_KEY** : Clé API transmise via le header `X-API-KEY`
- **LOGISTICS_API_FOLDER** : Nom du dossier (en minuscules) utilisé dans les routes de l'API
## Demarrage
## Démarrage
```bash
npm run build
```
L'application est disponible via Laravel Herd a l'adresse `http://api-logistics.test`.
L'application est disponible à l'adresse `http://api-logistics.test`.
Le dashboard Filament est accessible a l'adresse `http://api-logistics.test/admin`.
Le dashboard Filament est accessible à l'adresse `http://api-logistics.test/admin`.
## Structure du dashboard
Le dashboard Filament propose les pages suivantes :
- **Documentation** : Documentation de l'API Logistics
- **Tables** : Explorer les tables disponibles dans l'API et visualiser leurs colonnes
- **Articles** : Rechercher des articles et verifier le stock
- **Documents** : Lister des documents et consulter leurs details
- **Articles** : Rechercher des articles et vérifier le stock
- **Documents** : Lister des documents et consulter leurs détails
- **Journaux** : Rechercher et lister les journaux
- **Tiers** : Rechercher des tiers et consulter l'historique des articles
## Architecture technique
- `config/logistics.php` : Configuration de l'API Logistics
- `app/Services/LogisticsService.php` : Service centralise pour les appels HTTP vers l'API
- `app/Services/LogisticsService.php` : Service centralisé pour les appels HTTP vers l'API
- `app/Filament/Pages/` : Pages Filament du dashboard
- `database/migrations/` : Migrations incluant la table `api_request_logs` pour le suivi des requetes
- `database/migrations/` : Migrations incluant la table `api_request_logs` pour le suivi des requêtes
## Documentation de l'API
- [Documentation Postman](https://documenter.getpostman.com/view/40440561/2sB2qaj2Pz)
- Documentation interne : `documentation/WEB-A-1 (3).md`
- Documentation interne : `documentation/documentation_api_logistics.md`
## Tests