# Laravel Artisan & Composer Cheatsheet

## 🧹 Cache & Optimisations

| Action | Commande |
|--------|----------|
| Vider le cache d’application | `php artisan cache:clear` |
| Vider le cache des routes | `php artisan route:clear` |
| Vider le cache des vues compilées | `php artisan view:clear` |
| Vider le cache de config | `php artisan config:clear` |
| Générer le cache de config | `php artisan config:cache` |
| Générer le cache des routes | `php artisan route:cache` |
| Générer les vues compilées | `php artisan view:cache` |

---

## 🛠️ Migrations & Base de données

| Action | Commande |
|--------|----------|
| Lancer les migrations | `php artisan migrate` |
| Refresh DB (reset + migrate) | `php artisan migrate:refresh` |
| Reset toutes les migrations | `php artisan migrate:reset` |
| Rollback dernière migration | `php artisan migrate:rollback` |
| Rollback + migrate + seed | `php artisan migrate:refresh --seed` |
| Rejouer les seeders | `php artisan db:seed` |
| Seeder spécifique | `php artisan db:seed --class=UserSeeder` |

---

## 🧱 Scaffold / Génération

| Générer… | Commande |
|----------|----------|
| Un contrôleur | `php artisan make:controller NomController` |
| Un modèle | `php artisan make:model Nom` |
| Un modèle + migration | `php artisan make:model Nom -m` |
| Une migration | `php artisan make:migration create_users_table` |
| Un seeder | `php artisan make:seeder NomSeeder` |
| Une factory | `php artisan make:factory NomFactory` |
| Une policy | `php artisan make:policy NomPolicy` |
| Une request | `php artisan make:request StoreUserRequest` |
| Un job | `php artisan make:job TraitementRapideJob` |
| Une notification | `php artisan make:notification NomNotification` |
| Un mail | `php artisan make:mail WelcomeMail` |

---

## 🧪 Tests & Environnement

| Action | Commande |
|--------|----------|
| Lancer les tests PHPUnit | `php artisan test` |
| Copier le fichier .env | `cp .env.example .env` |
| Générer APP_KEY | `php artisan key:generate` |

---

## 📦 Composer (lié à Laravel)

| Action | Commande |
|--------|----------|
| Mettre à jour les dépendances | `composer update` |
| Ajouter un package | `composer require vendor/package` |
| Supprimer un package | `composer remove vendor/package` |
| Recompiler l’autoload | `composer dump-autoload` |
| Recompiler optimisé | `composer dump-autoload -o` |

---

## 🧠 Commandes utiles en développement

| Action | Commande |
|--------|----------|
| Lister les routes | `php artisan route:list` |
| Lancer le serveur local | `php artisan serve` |
| Accès console Tinker | `php artisan tinker` |
| Voir les événements/listeners | `php artisan event:list` |

---

## 🧨 Alias recommandé

```bash
alias laraclean='php artisan config:clear && php artisan cache:clear && php artisan route:clear && php artisan view:clear && composer dump-autoload'
```

---

## 🏁 Résumé rapide

```bash
php artisan cache:clear
php artisan config:clear
php artisan view:clear
php artisan route:clear
php artisan migrate
php artisan db:seed
php artisan route:list
php artisan serve
composer dump-autoload
```