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

Chrome Laravel Package

chrome-php/chrome

Chrome PHP lets you control headless Chrome or Chromium from PHP, synchronously or asynchronously. Open pages, navigate, run JavaScript, take screenshots, generate PDFs, and emulate mouse and keyboard input with a simple, IDE-friendly API. Requires PHP 7.4–8.5 and Chrome/Chromium 65+.

View on GitHub
Deep Wiki
Context7
v1.16.1
  • Pass explicit trim characters ahead of the PHP 8.6 trim default change
v1.16.0
  • Promote the returned PageUtils helper classes to the public API
  • Add an option and browser API to disable JavaScript execution on existing and future pages
  • Allow choosing the box model in Node::getPosition()
  • Allow setting referrer, referrerPolicy and transitionType in Page::navigate()
  • Add Page::authenticate and Page::clearAuthentication methods for HTTP authentication challenges
  • Add AbstractBinaryInput::saveToStream method
  • Allow specifying options in Page::screenshotElement()
  • Allow fractional mouse coordinates in Mouse::move()
  • Return floats from Mouse::getPosition()
  • Wait for socket data instead of polling for responses
  • Require chrome-php/wrench ^1.9
  • Support newer versions of Chrome
v1.15.1
  • Fix mouse scrolling timing out when the page changes during the scroll
  • Fix Linux Chrome binary detection on POSIX shells
v1.15.0
  • Add PHP 8.5 support
  • Add support for using Symfony 8 components
  • Remove support for Symfony 4 components
  • Add CHROME_NO_SANDBOX env var
v1.14.0
  • Use more specific return type in PageScreenshot::getException
  • Security fix for missing encoding in CssSelector
v1.13.0
  • Set maximal expires value if session=false in Page::setCookies
v1.12.1
  • Fix nullable parameter definition in AbstractBinaryInput::getRawBinary
v1.12.0
  • Add PHP 8.4 support
  • Add the ability to screenshot individual elements on the page
  • Add AbstractBinaryInput::getRawBinary method
  • Have Cookie implement IteratorAggregate
v1.11.0
  • Add PHP 8.3 support
  • Auto-detect Chromium too
v1.10.1
  • Fixed encoding bugs in XPathSelector
v1.10.0
  • Add Add Node::setHTML method
  • Add Page::setScriptExecution method
  • Allow usage of XPath in Page::waitForElement
  • Enable removal of Chrome flags via excludedSwitches option
  • Add support for webp format and optimizeForSpeed option in Page::screenshot
  • Add support for using Symfony 7 components
v1.9.1
  • Fix rare crash in Page::getHtml
  • Fix whitespace character handling in Keyboard::typeText()
v1.9.0
  • Added some additional life-cycle event constants
  • Added support for disabling browser notifications
v1.8.1
  • Fixed issue where Chrome 111 and later have different default allowed origins
v1.8.0
  • Add helper function to find target
  • Add --crash-dumps-dir option
  • Allow passing the event name to wait for in setHtml
  • Dropped PHP 7.3 support
v1.7.2
  • Fix case where the timeout in setHtml() isn't respected
  • Fix hard coded timeout in Dom class
  • Fix hard coded timeout in ResponseReader class
  • Stop process when an error occurs during startup
  • Stop process on waitForStartup if dev tools failed to start
  • Disconnect socket on sendCloseMessage
v1.7.1
  • Fix command execution in AutoDiscover
v1.6.2
  • Fix intermittency in Mouse::findElement()
  • Fix scroll with values higher than possible
v1.7.0
  • Use command to guess the chrome executable in Linux
  • Officially support PHP 8.2
  • Fix extra HTTP headers
v1.6.1
  • Support Monolog 3
v1.6.0
  • Officially support PHP 8.1
v1.5.0
  • Added Browser::getPages method
  • Added Page::waitUntilContainsElement() method
  • Added Page::setHtml() method
  • Added support for XPath by introducing Selector
  • Added Mouse::findElement() method
  • Switch to flatten mode
v1.4.1
  • Added fallback to css layout metrics
  • Added missing destroyed setting
  • Prevent Node::querySelector from returning nodeId 0
  • Fixed "What's new" page opening on startup
  • More fixes to enable eventual PHP 8.1 support
v1.4.0
  • Added support for --no-proxy-server and --proxy-bypass-list
  • Added timeout option to Page::getHtml
  • Added Node::sendFiles method
v1.3.1
  • Fixed issues with Keyboard::typeText with multibyte strings
  • Fixed issues with retina and scaled displays
  • Fixed issues with timeouts if system time changes
  • Fixed Mouse::find() after cursor has moved
v1.3.0
  • Added support for setting HTTP headers
  • Added support for psr/log 2 and 3
v1.2.1
  • Partial PHP 8.1 support
v1.2.0
  • Dropped --disable-default-apps and --disable-extensions by default
  • Added API for interacting with the DOM
  • Added a way to set the timezone
  • Reworked PagePdf class to improve validation
v1.1.1
  • Fix mouse element position
v1.1.0
  • Add DOM element locator
v1.0.1
  • Fix mouse scroll maximum distance
v0.11.2
  • Fix mouse scroll maximum distance
v1.0.0
  • Switched over to chrome-php/wrench
  • Add support for keyboard key combinations
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.
laravel2580/idehelpers
delatbabel/viewpages
anavel/gettext
muhamadrezaar/highcharts
delatbabel/keylists
frankkessler/salesforce-laravel-oauth2-rest
anavel/foundation
wdmtech/enviricons
eii/laravel-captcha
muka/shape-reader
tdt/json
refinery29/php-cs-fixer-config
hotmeteor/eco-env
mvaliolahi/hydrate
wearede/tbcpay-php
parsnick/steak
thibaud-dauce/mattermost-php
multilinguals/apollo-client
antaresbr/collection
kr0lik/phpstan-rules