Installation
Prérequis
- PHP ^8.5
- Laravel ^13.0
Installer le paquet
Arrel est un logiciel propriétaire distribué depuis un dépôt privé ; une licence valide est nécessaire pour l'utiliser en production (voir Pricing).
Comme le dépôt est privé, Composer doit savoir où le télécharger et comment s'authentifier. Ajoutez-le à composer.json :
{
"repositories": [
{
"type": "vcs",
"url": "https://github.com/arrelphp/arrel"
}
]
}Puis installez le paquet :
composer require arrel/arrelAuthentification auprès du dépôt privé
Composer s'authentifie avec un token GitHub disposant d'un accès en lecture au dépôt. En local, composer config --global github-oauth.github.com <token> l'enregistre dans ~/.composer/auth.json.
Sur un serveur (Forge, par exemple) et en CI, le token est aussi enregistré dans un auth.json, ou injecté avec la variable d'environnement COMPOSER_AUTH :
COMPOSER_AUTH='{"github-oauth":{"github.com":"<token>"}}' composer installUtilisez un token de portée minimale (lecture seule sur le dépôt d'Arrel) et avec une date d'expiration, et ne le laissez jamais dans le dépôt de l'application.
Le ServiceProvider est enregistré automatiquement via extra.laravel.providers dans composer.json (inutile de l'ajouter à la main). Au démarrage, il publie :
- Le fichier de configuration
config/arrel.php, que vous pouvez publier avecphp artisan vendor:publish --tag=arrel-config. - Les routes web et API d'Arrel (
/{prefix}/{panel}/...et/arrel/api/{panel}/...). - Les traductions du paquet, sous le namespace
arrel::. - Un singleton
PanelRegistry, où vous enregistrerez vos Panels.
Publier les assets compilés
Le frontend d'Arrel (Vue, précompilé) est distribué dans le paquet et doit être publié dans le répertoire public/ de votre application :
php artisan arrel:assetsCela copie dist/ dans public/vendor/arrel et y écrit un fichier .hash. Chaque réponse HTML du panneau (resources/views/panel.blade.php) inclut ce hash comme query string (arrel.css?v=..., arrel.js?v=...), et AssetsManifest::ensureFresh() échoue bruyamment en mode debug s'il détecte que les assets publiés ne correspondent pas à ceux du paquet installé, afin d'éviter de servir du JS obsolète sans vous en rendre compte après un composer update.
Relancez php artisan arrel:assets chaque fois que vous mettez à jour la version d'arrel/arrel.
Vérifier l'installation
Une fois les assets publiés et un Panel enregistré, ouvrez /arrel/{id-du-panneau} dans le navigateur. Vous devriez voir l'écran de connexion. Si ce n'est pas le cas, vérifiez que sanctum.stateful contient le domaine sur lequel vous travaillez.
Nettoyage des uploads temporaires
Les champs File/Image envoient d'abord le fichier dans un répertoire temporaire (arrel-temp, disque local) avant qu'il ne soit déplacé à son emplacement final lors de l'enregistrement du formulaire (voir Champs). Planifiez cette commande pour qu'elle nettoie ceux qui restent orphelins :
php artisan arrel:prune-uploadsElle supprime tout fichier d'arrel-temp de plus de 24 heures. Un bon endroit pour la planifier est le routes/console.php de votre application, avec le scheduler de Laravel :
Schedule::command('arrel:prune-uploads')->daily();Étape suivante
Une fois le paquet installé, l'étape suivante est de configurer un Panel : décider quels Resources, pages et widgets il contient, et l'intégrer à une route de votre application.