Files
2026-09-29 10:45:14 +02:00

81 lines
2.1 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# JeuxVideoTech
Application web multi-utilisateurs pour gérer une bibliothèque personnelle de **consoles** et de **jeux vidéo**.
Stack : PHP 8.3 + Apache, fichiers JSON, Docker Compose, enrichissement optionnel via l’API [RAWG](https://rawg.io/apidocs).
## Démarrage rapide
```bash
cp .env.example .env
docker compose up -d --build
```
Ouvrir [http://localhost:8080](http://localhost:8080).
Compte administrateur créé automatiquement au premier démarrage (valeurs dans `.env`) :
| Champ | Valeur par défaut |
|---|---|
| Identifiant | `admin` |
| Mot de passe | `admin123` |
**Changez ces valeurs avant tout usage réel.**
## Fonctionnalités
- Inscription / connexion / déconnexion (sessions PHP, CSRF, mots de passe hashés)
- Isolation des données par compte
- CRUD consoles et jeux
- Recherche et filtres sur les jeux (console, état, texte)
- Enrichissement automatique (jaquette, description, date, genres, éditeur / développeur) si `RAWG_API_KEY` est définie
- Administration des comptes (rôle `admin`)
- Persistance via volume Docker (`./data`)
## Configuration
Variables dans `.env` :
| Variable | Description |
|---|---|
| `APP_PORT` | Port hôte (défaut `8080`) |
| `ADMIN_IDENTIFIANT` | Identifiant du compte admin initial |
| `ADMIN_MOT_DE_PASSE` | Mot de passe du compte admin initial |
| `ADMIN_EMAIL` | E-mail du compte admin |
| `RAWG_API_KEY` | Clé API RAWG (optionnelle) |
| `SESSION_LIFETIME` | Durée de session en secondes |
Sans clé RAWG, l’ajout manuel des jeux reste possible.
## Structure
```
public/ Point d’entrée Apache + assets
src/ Bootstrap, auth, services, contrôleurs
templates/ Vues PHP
data/ JSON + jaquettes + cache API (volume)
docker/ Config Apache / PHP
```
## États de jeu
- `possede` — Possédé
- `a_acheter` — À acheter
- `prete` — Prêté
- `vendu` — Vendu
## Commandes utiles
```bash
# Lancer
docker compose up -d --build
# Logs
docker compose logs -f app
# Arrêter
docker compose down
```
Les données (`data/*.json`, jaquettes) survivent au redémarrage du conteneur grâce au volume monté.