Gathering detailed insights and metrics for appium-chromedriver
Gathering detailed insights and metrics for appium-chromedriver
Gathering detailed insights and metrics for appium-chromedriver
Gathering detailed insights and metrics for appium-chromedriver
npm install appium-chromedriver
Typescript
Module System
Min. Node Version
Node Version
NPM Version
68.3
Supply Chain
87
Quality
95.7
Maintenance
50
Vulnerability
90.1
License
JavaScript (97.25%)
TypeScript (2.75%)
Total Downloads
0
Last Day
0
Last Week
0
Last Month
0
Last Year
0
Apache-2.0 License
76 Stars
868 Commits
58 Forks
21 Watchers
3 Branches
43 Contributors
Updated on Jul 09, 2025
Latest Version
7.0.30
Package Id
appium-chromedriver@7.0.30
Unpacked Size
295.59 kB
Size
64.53 kB
File Count
51
NPM Version
10.9.3
Node Version
22.17.0
Published on
Jul 09, 2025
Cumulative downloads
Total Downloads
Last Day
0%
NaN
Compared to previous day
Last Week
0%
NaN
Compared to previous week
Last Month
0%
NaN
Compared to previous month
Last Year
0%
NaN
Compared to previous year
13
21
Node.js wrapper around Chromedriver and Microsoft Edge WebDriver. The Microsoft Edge WebDriver support is since v5.4.0. This wrapper is not used directly in Appium, but rather by various Android drivers to automate Chrome/Chromium-based browsers and web views using Hybrid Mode approach. Check the corresponding driver tutorials to get more details on it.
Note
This package is intended to be used as a helper module for Appium drivers such as UiAutomator2 and appium-chromium-driver. It was not created for standalone usage. Please ensure you know what you are doing before using this package directly.
Note
This package can work with Microsoft Edge WebDriver as well, but the support is limited. For example, automatic downloads do not work for Microsoft Edge WebDriver.
Since version 6.0.0 of this module automatic download of the latest known chromedriver does not happen anymore. The below information is only relevant for older module versions:
By default, upon installation the package downloads the most recent known Chromedriver version from
Chromedriver CDN server: http://chromedriver.storage.googleapis.com.
If, for some reason, you want to install the package without downloading the Chromedriver
binary set the APPIUM_SKIP_CHROMEDRIVER_INSTALL
environment variable:
1APPIUM_SKIP_CHROMEDRIVER_INSTALL=1 npm install appium-chromedriver
By default, the package uses the most recent known Chromedriver version. The full list of known Chromedriver versions and their corresponding supported Chrome version could be found in mapping.json
To download a custom version of Chromedriver, please set CHROMEDRIVER_VERSION
environment variable:
1CHROMEDRIVER_VERSION=107.0.5304.62 npm install appium-chromedriver
If you want Chromedriver to be downloaded from another CDN, which differs from the
default one https://chromedriver.storage.googleapis.com, then set the new URL to
the CHROMEDRIVER_CDNURL
environment variable:
1CHROMEDRIVER_CDNURL=http://npm.taobao.org/mirrors/chromedriver npm install appium-chromedriver
If you want automatic chromedrivers download feature to work with a custom CDN URL then make sure
the server returns a proper list of stored drivers in response to requests having
Accept: application/xml
header. An example XML could be retrieved from the original URL using
curl -H 'Accept: application/xml' https://chromedriver.storage.googleapis.com
command.
Since version 5.6 the second environment variable has been added: CHROMELABS_URL
. By default, it points
to https://googlechromelabs.github.io, and is expected to contain the actual prefix of
Chrome for Testing availability
JSON API. This API allows retrieval of chromedrivers whose major versions are greater than 114
.
Similarly to the above it could be also defined in the .npmrc file:
1chromelabs_url=https://googlechromelabs.github.io
You may also want to skip checking for older Chromedriver versions by providing an
empty value to the CHROMEDRIVER_CDNURL
variable.
1import Chromedriver from 'appium-chromedriver'; 2 3// 'sync'-like await/Promise usage 4async function runSession() { 5 let driver = new Chromedriver(); 6 const desiredCaps = {browserName: 'chrome'}; 7 await driver.start(desiredCaps); 8 let status = await driver.sendCommand('/status', 'GET'); 9 await driver.stop(); 10} 11 12// EventEmitter usage 13function runSession2() { 14 let driver = new Chromedriver(); 15 const desiredCaps = {browserName: 'chrome'}; 16 driver.start(desiredCaps); 17 driver.on(Chromedriver.EVENT_CHANGED, function (msg) { 18 if (msg.state === Chromedriver.STATE_ONLINE) { 19 driver.sendCommand('/status', 'GET').then(function (status) { 20 driver.stop(); 21 }); 22 } 23 }); 24 driver.on(Chromedriver.EVENT_ERROR, function (err) { 25 // :-( 26 }); 27}
Here's what the Chromedriver state machine looks like:
Here are the events you can listen for:
Chromedriver.EVENT_ERROR
: gives you an error objectChromedriver.EVENT_CHANGED
: gives you a state change object, with a state
property that can be one of:
Chromedriver.STATE_STOPPED
Chromedriver.STATE_STARTING
Chromedriver.STATE_ONLINE
Chromedriver.STATE_STOPPING
Chromedriver.STATE_RESTARTING
1npm run build 2npm run lint
1npm run test 2npm run e2e-test
8.1/10
Summary
appium-chromedriver downloads Resources over HTTP
Affected Versions
< 2.9.4
Patched Versions
2.9.4
Reason
no binaries found in the repo
Reason
30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10
Reason
no dangerous workflow patterns detected
Reason
0 existing vulnerabilities detected
Reason
license file detected
Details
Reason
packaging workflow detected
Details
Reason
security policy file detected
Details
Reason
Found 2/16 approved changesets -- score normalized to 1
Reason
detected GitHub workflow tokens with excessive permissions
Details
Reason
dependency not pinned by hash detected -- score normalized to 0
Details
Reason
no effort to earn an OpenSSF best practices badge detected
Reason
project is not fuzzed
Details
Reason
SAST tool is not run on all commits -- score normalized to 0
Details
Score
Last Scanned on 2025-07-07
The Open Source Security Foundation is a cross-industry collaboration to improve the security of open source software (OSS). The Scorecard provides security health metrics for open source projects.
Learn More