# Installation — Coaster World v1.100.0

Base : `coaster-world_v1.99.9.40_2026-08-17.zip`.

## Méthode recommandée — Laravel

Depuis la racine du projet :

```bash
php artisan migrate
php artisan optimize:clear
```

Le dossier des cartes est créé automatiquement sur le disque `public` lors du premier import. Le lien `public/storage` doit déjà exister sur l'installation Coaster World. Si ce n'est pas le cas :

```bash
php artisan storage:link
```

Aucun nouveau package Composer ou npm n'est requis.

### Import des packs ZIP

L'import automatique des packs nécessite l'extension PHP `zip` (`ZipArchive`). Sous Laragon, si le message indique que ZipArchive est indisponible, activer l'extension ZIP de la version PHP utilisée puis redémarrer Laragon. Les imports manuels recto/versos restent disponibles sans import ZIP.

## Alternative SQL manuelle

Si les migrations Laravel ne peuvent pas être utilisées, exécuter **à la place** :

`database/migrations/sql/coaster_world_v1.100.0_card_binder.sql`

Ne pas exécuter le SQL manuel après `php artisan migrate`, sinon les colonnes existent déjà.

## Premier test

1. Ouvrir **Administration → Cartes**.
2. Cliquer **Ajouter une carte**.
3. Choisir `Baron 1898`.
4. Importer `Coaster-World_Baron-1898_Multilingual-Pack.zip`.
5. Enregistrer.
6. Ouvrir **Mon classeur** avec un utilisateur ayant ou non validé Baron 1898 pour vérifier respectivement l'état débloqué ou verrouillé.
