Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Chromedriver Laravel Package

enm1989/chromedriver

A PHP package for managing ChromeDriver installations, making it easier to download and use the correct ChromeDriver binary for browser automation and testing. Useful for Laravel Dusk or Selenium-style workflows that need reliable Chrome and ChromeDriver version matching.

Deep Wiki
Context7

Product Decisions This Supports

  • Build vs. buy for test-infrastructure plumbing. ChromeDriver provisioning is a small, recurring, undifferentiated chore. This package is a candidate "buy" (i.e., adopt) for that chore — the decision it informs is whether to spend engineering days writing and maintaining binary-resolution logic versus pulling in a dependency.
  • Whether E2E/browser tests can gate releases. Reliable, version-matched ChromeDriver is a prerequisite for a Dusk/WebDriver suite that runs on every PR. If driver drift is currently a source of flaky CI, this package is one option on the table for stabilizing it.
  • Developer onboarding cost. It speaks to a roadmap item like "new engineers can run the full test suite on day one" — automated driver resolution shortens local setup, especially across macOS/Linux/Windows laptops.
  • CI standardization. A programmatic pin/download step can be added to a pipeline definition, which shapes decisions about self-hosted runners vs. GitHub Actions' preinstalled browsers, and about caching strategy in the build.
  • Version-matrix testing. If the roadmap includes testing against multiple Chrome versions, a driver resolver is an enabling component.

When to Consider This Package

Adopt-consideration criteria:

  • You are on Laravel Dusk or raw WebDriver and your dusk:chrome-driver / manual download path keeps breaking on Chrome's ~4-week release cadence.
  • You need explicit, pinned driver versions for reproducible builds, rather than "whatever Selenium Manager resolves today."
  • You have a small team without appetite for maintaining a driver-fetch script, and the package's behavior (source URLs, cache paths, supported platforms) has been read and is acceptable.
  • You can vendor or fork it if upstream goes quiet.

Reasons to look elsewhere — and there are several here:

  • License is NOASSERTION. Until legal clears it, treat this as non-adoptable for any commercial or open-source-shipping product. This is the single biggest gate.
  • 15 stars, last release June 2023. Low bus factor; Chrome/ChromeDriver compatibility is a moving target and this package's release cadence does not match Chrome's. Assume you own it after adoption.
  • Supply-chain exposure. A package whose job is to fetch and execute binaries from the network is a high-trust dependency. Weigh against: Selenium Manager (bundled with Selenium 4.6+), dbrekelmans/bdi, Symfony Panther's built-in downloader, Dusk's native dusk:chrome-driver --detect, and simply shipping a Docker image with Chrome + driver preinstalled.
  • Prefer the ecosystem-backed option (Selenium Manager, BDI, or a pinned container image) unless this package solves a specific gap those don't — e.g., an unusual PHP/Laravel version combination or a need to run in an air-gapped build with a local binary mirror.

Recommendation: do not adopt as a default. Shortlist it as a fallback spike only if the mainstream options demonstrably fail; if adopted, fork it, pin it, and vendor the binary source.

How to Pitch It (Stakeholders)

For executives: Browser tests are what let us ship changes without a manual QA pass, and they break when Chrome updates outpace the test driver. This package automates keeping the driver in sync, so we spend less time on flaky builds. However, it's a small, single-maintainer project with an unclear license and no release since mid-2023 — so we're not recommending it today. The recommendation is to use the driver management already bundled with our testing stack (or a pinned container image), which gets us the same reliability with a vendor we don't have to babysit.

For engineering: enm1989/chromedriver resolves and installs the ChromeDriver binary matching the local Chrome build. It's a plausible fix for Dusk driver drift, but at 15 stars, no release since June 2023, and NOASSERTION licensing, it's effectively a one-person dependency that we'd be adopting and maintaining. Engineering's position: use Selenium Manager, dbrekelmans/bdi, or a pinned selenium/standalone-chrome image in CI; only revisit this package if those fail on our specific PHP/Laravel version, and only after legal signs off on the license.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
socialdept/atp-orm
cboxdk/laravel-assistant-client
socialdept/atp-resolver
socialdept/tenant-domains
tautvydasr/blade-class-names
socialdept/color-scales
maherelgamil/controller
coleus/widgets
coleus/table
coleus/users
coleus/music
coleus/health
coleus/calendar
coleus/notes
coleus/support
coleus/settings
coleus/apps
seampact/laravel
emmyconceptng/laravel-ng-postcode
jjsquady/round-robin