orchestra/dusk-updater-api
Standardized API for Laravel Dusk to query, fetch, and download compatible ChromeDriver binaries. Helps automate driver updates across environments with a simple, consistent interface for locating versions and retrieving platform-specific builds.
Start by installing the package via Composer:
composer require orchestra/dusk-updater-api --dev
The package provides a standardized API to fetch ChromeDriver binaries for Laravel Dusk. It does not auto-install or manage ChromeDriver directly — it only exposes methods to retrieve version info and download URLs. To use it, inject Orchestra\DuskUpdaterApi\ChromeVersionFinder or Orchestra\DuskUpdaterApi\ChromeDriverDownloader into your build/test scripts or custom tooling. The first logical use case is verifying compatibility: check the installed Chrome/Chromium version against the corresponding ChromeDriver version supported by the API.
$downloader = new \Orchestra\DuskUpdaterApi\ChromeDriverDownloader();
$downloader->downloadChromeDriver('127.0.6533.119', '/path/to/bin');
ChromeVersionFinder::installedChromeVersion() with ChromeVersionFinder::chromeDriverVersion() to compare runtime vs. available versions, alerting developers to mismatches during local dev or test setup.ChromeVersionFinderInterface. You can wrap it in your own service to add caching, fallback logic (e.g., fallback to stable version if exact match unavailable), or integration with tools like Laravel Forge or Sidekick (via orchestra/sidekick as noted in v1.0.2).orchestra/dusk-updater (its predecessor), this package is API-only — no artisan command. Developers expecting CLI usage must build their own wrapper (e.g., php artisan dusk:update-driver).ChromeDriverDownloader::getDownloadUrl() for dynamic resolution instead of hardcoding URLs.PHP_OS_FAMILY and architecture detection (e.g., php_uname('m')).Stringable usage could cause silent failures if using older PHP versions.laravel/dusk auto-downloader: This package targets advanced use cases (e.g., containerized builds, headless deployments); for simple local setups, stick with dusk update.How can I help you explore Laravel packages today?