Version 1.0.0
@stackline/karma-chrome-launcher
A Karma plugin. Launcher for Chrome and Chrome Canary.
Independent maintenance of karma-chrome-launcher 3.2.0. Original authors and licenses are retained.
Installation
# Preserve existing imports with an npm alias
npm install karma-chrome-launcher@npm:@stackline/karma-chrome-launcher@1.0.0
# Or use the scoped package name in your imports
npm install @stackline/karma-chrome-launcher@1.0.0Node.js: See compatibility notes. Read the compatibility and maintenance notes before migrating.
Usage and API
The reference below may retain upstream package names. Use the alias installation above to run those imports with this Stackline release.
@stackline/karma-chrome-launcher
Independent maintenance fork of karma-chrome-launcher@3.2.0. Original API, module format, runtime dependency ranges, and supported Node.js engines are preserved.
npm install @stackline/karma-chrome-launcher
# Preserve existing imports with an npm alias:
npm install karma-chrome-launcher@npm:@stackline/karma-chrome-launcher@1.0.0
See UPSTREAM.md for the exact source and issue review, and CHANGELOG.md for focused maintenance changes. Development and release tooling runs on Node.js 24; that does not change the library runtime requirement.
Maintained by Stackline. Issues · npm.
Upstream documentation
karma-chrome-launcher
Launcher for Google Chrome, Google Chrome Canary and Google Chromium.
Installation
The easiest way is to keep karma-chrome-launcher as a devDependency in your package.json,
by running
$ npm i -D karma-chrome-launcher
Configuration
// karma.conf.js
module.exports = function(config) {
config.set({
browsers: ['Chrome', 'Chrome_without_security'], // You may use 'ChromeCanary', 'Chromium' or any other supported browser
// you can define custom flags
customLaunchers: {
Chrome_without_security: {
base: 'Chrome',
flags: ['--disable-web-security', '--disable-site-isolation-trials']
}
}
})
}
The --user-data-dir is set to a temporary directory but can be overridden on a custom launcher as shown below.
One reason to do this is to have a permanent Chrome user data directory inside the project directory to be able to
install plugins there (e.g. JetBrains IDE Support plugin).
customLaunchers: {
Chrome_with_debugging: {
base: 'Chrome',
chromeDataDir: path.resolve(__dirname, '.chrome')
}
}
You can pass list of browsers as a CLI argument too:
$ karma start --browsers Chrome,Chrome_without_security
Headless Chromium with Puppeteer
The Chrome DevTools team created Puppeteer - it will automatically install Chromium for all platforms and contains everything you need to run it from within your CI.
Available Browsers
Note: Headless mode requires a browser version >= 59
- Chrome (CHROME_BIN)
- ChromeHeadless (CHROME_BIN)
- Chromium (CHROMIUM_BIN)
- ChromiumHeadless (CHROMIUM_BIN)
- ChromeCanary (CHROME_CANARY_BIN)
- ChromeCanaryHeadless (CHROME_CANARY_BIN)
- Dartium (DARTIUM_BIN)
Usage
$ npm i -D puppeteer karma-chrome-launcher
// karma.conf.js
process.env.CHROME_BIN = require('puppeteer').executablePath()
module.exports = function(config) {
config.set({
browsers: ['ChromeHeadless']
})
}
For more information on Karma see the homepage.
Upstream issues and maintenance review
Upstream review
Based on karma-chrome-launcher@3.2.0, source e92a2b4c19d43fe47a3322a31f72d2a5bfcf77b0. The registry gitHead source manifest contains the previous semantic-release version, but every upstream published runtime file matches this commit byte-for-byte. Only package metadata differs in the upstream tarball, whose integrity was checked independently.
Issue triage (2026-09-29)
- #291: Enterprise user-data-dir: Preserve configurable chromeDataDir and test argument generation.
- #158: Root sandbox startup: CI uses a dedicated no-sandbox headless launcher only in the test configuration; library defaults stay unchanged.
- #246: WSL binary selection: Preserve original platform detection; do not claim an untested Windows/WSL migration.
No upstream maintainer was contacted. Runtime files and original license/authorship are retained. Development tooling uses Node24; package engine declarations remain unchanged.
Verification
npm ci --ignore-scripts, npm test, npm run test:package, npm audit --audit-level=low. Packed tests install the actual archive and exercise the exported plugin. Publication uses the exact CI tarball only after CI and CodeQL succeed.
Release changes
Stackline changes
1.0.0
- Scoped maintenance fork of karma-chrome-launcher@3.2.0 preserving original runtime source, dependency ranges, plugin names and engines.
- Modernized development test tooling and removed obsolete semantic-release/commit hook dependencies.
- Added packed-consumer checks, full dependency audit, CI/CodeQL gates, provenance and immutable releases.
3.2.0 (2023-04-20)
Features
- add process.env.ProgramW6432 as root location for binaries (12a73db)
3.1.1 (2022-03-09)
Bug Fixes
- artificially trigger a release (83fdc3c)
3.1.0 (2019-08-13)
Features
- add --disable-dev-shm-usage flag to headless (137005d)
3.0.0 (2019-07-12)
Features
2.2.0 (2017-06-23)
Features
- add ChromiumHeadless (7a12021)
2.1.1 (2017-05-05)
Bug Fixes
2.1.0 (2017-05-02)
Features
- add support for custom user-data-dir in Chromium (579fcfc), closes #89
- add support for headless Chrome/ChromeCanary (7446181)
2.0.0 (2016-08-18)
Features
- Chromium support for Linux, Darwin and Windows (33e8d82)
1.0.1 (2016-05-02)
0.2.3 (2016-03-22)
Features
- config: Allow --user-data-dir to be set in launcher properties (2c0b7f4)
0.2.2 (2015-12-01)
Bug Fixes
- chrome will ignore command line flags it does not yet know about (426e7c3)
0.2.1 (2015-10-07)
Bug Fixes
- ChromeCanary: on Linux (archlinux), it can be named google-chrome-unstable (28cb5b0)
<a name"0.2.0">
0.2.0 (2015-06-23)
Bug Fixes
<a name"0.1.9">
0.1.9 (2015-06-23)
<a name"0.1.8">
0.1.8 (2015-06-23)
<a name"0.1.7">
0.1.7 (2015-06-23)
<a name"0.1.6">
0.1.6 (2015-06-23)
Bug Fixes
- jsFlags: un-quote --js-flags flag and automatically merge with presets (4509c277)
<a name"0.1.5">
0.1.5 (2015-06-23)
Bug Fixes
- better error when DARTIUM_BIN not set (27462e86)
<a name"0.1.4">
0.1.4 (2015-06-23)
Bug Fixes
- the translation is now disabled on launch (b2f389ba)
<a name"0.1.3">
0.1.3 (2015-06-23)
Features
- Launcher: Add Dartium launcher. (ae81c0c1)
<a name"0.1.2">
0.1.2 (2015-06-23)
<a name"0.1.12">
0.1.12 (2015-06-23)
<a name"0.1.11">
0.1.11 (2015-06-23)
<a name"0.1.10">
0.1.10 (2015-06-23)
Bug Fixes
- better error when DARTIUM_BIN not set (27462e86)
- the translation is now disabled on launch (b2f389ba)
- jsFlags: un-quote --js-flags flag and automatically merge with presets (4509c277)
Features
<a name"0.1.1">
0.1.1 (2015-06-23)
Bug Fixes
<a name"0.1.0">
0.1.0 (2015-06-23)
<a name"0.0.2">
0.0.2 (2015-06-23)
Features
- allow passing custom flags (4ebc7694)
Release files and references
- README.md
- UPSTREAM.md
- CHANGELOG.md
- LICENSE
- NOTICE
- Package and publication metadata
- Full text documentation
Package bytes, npm provenance and the immutable GitHub release were verified for this version. Security checks describe the reviewed release; documented compatibility risks and upstream reports are not blanket claims of resolution.