1e6557729f133c7b5889f0061d5fe867f1da99da
- Introduced a new trait `HasCompositePrimaryKey` to enable Eloquent models to handle composite primary keys, which are not supported natively by Eloquent. The trait requires models to implement a method to define the composite key columns and manages key retrieval for save and select queries. chore: add GrumPHP configuration for pre-commit checks - Added a `grumphp.yml` configuration file to enforce code style and static analysis checks before commits. This setup includes Laravel Pint for code style and Larastan for static analysis, ensuring code quality and consistency. chore: create PHPStan configuration file - Created a `phpstan.neon` file to configure PHPStan with Larastan for static analysis. The configuration specifies the paths to analyze and sets the analysis level to 5 for a balance between catching bugs and avoiding excessive strictness.
(RE)Sources Relationnelles
Plateforme de partage de ressources relationnelles à destination des citoyens (simulation d'un projet du Ministère des Solidarités et de la Santé). Projet collaboratif — CDA / CESI — Groupe 1.
Application web développée avec Laravel 12 (architecture MVC), conteneurisée avec Docker et déployée en continu via Gitea Actions.
- Application : https://app.sam-coffre.duckdns.org
- Dépôt Git : https://gitea.sam-coffre.duckdns.org/
Stack technique
| Élément | Technologie |
|---|---|
| Framework | Laravel 12 (PHP 8.2) |
| Base de données | MySQL / MariaDB (SQLite en test) |
| Serveur web | Nginx (reverse proxy + TLS) |
| Conteneurisation | Docker / Docker Compose |
| Gestion de version | Git + Gitea |
| CI/CD | Gitea Actions |
| Qualité de code | Laravel Pint |
| Tests | PHPUnit |
Installation en local
git clone https://gitea.sam-coffre.duckdns.org/<groupe>/ressources-relationnel.git
cd ressources-relationnel
cp .env.example .env
composer install
php artisan key:generate
php artisan migrate --seed
npm install && npm run build
php artisan serve
Développement
# Lancer les tests automatisés
php artisan test
# Vérifier le style de code
vendor/bin/pint --test
# Corriger automatiquement le style de code
vendor/bin/pint
Déploiement
Le déploiement est automatisé : un push sur la branche master déclenche
la CI (qualité + tests) puis, si tout est vert, le déploiement en production.
Voir docs/02-plan-de-deploiement.md.
Documentation (rendu bloc INFCDAAL3)
La documentation technique « Déployer et sécuriser » est dans le dossier
docs/ :
Licence
Projet pédagogique — usage limité au cadre de la formation.
Description
Languages
PHP
64.8%
Blade
33.8%
CSS
0.6%
Dockerfile
0.5%
JavaScript
0.3%