English | 中文
Install Chrome extension for Electron, support
cjs/esm.
This library is based on Samuel Attard's electron-devtools-installer and JonLuca De Caro's electron-extension-installer, with some modifications and added small features. It provides support for esm and cjs to support for Electron v28+.
For Chrome DevTools installation, please visit the Official Documentation.
- Support
cjs/esm - Support
Electron v28+to useesm
# pnpm
pnpm add @tomjs/electron-devtools-installer
# yarn
yarn add @tomjs/electron-devtools-installer
# npm
npm add @tomjs/electron-devtools-installer- esm
import { installExtension, VUEJS_DEVTOOLS } from '@tomjs/electron-devtools-installer';
import { app } from 'electron';
// Install Vue.js DevTools
app.whenReady().then(() => {
installExtension(VUEJS_DEVTOOLS) // equals to installExtension("nhdogjmejiglipccpnnnanhbledajbpd")
.then(ext => console.log(`Added Extension: ${ext.name}`))
.catch(err => console.log('An error occurred: ', err));
});- cjs
const { installExtension, VUEJS_DEVTOOLS } = require('@tomjs/electron-devtools-installer');
const { app } = require('electron');
// Install Vue.js DevTools
app.whenReady().then(() => {
installExtension(VUEJS_DEVTOOLS)
.then(ext => console.log(`Added Extension: ${ext.name}`))
.catch(err => console.log('An error occurred: ', err));
});- API Document provided by jsdocs.io.
- index.d.ts provided by unpkg.com.
The following is a list of preset Chrome extensions ID:
| ID | Name |
|---|---|
ANGULAR_DEVTOOLS |
Angular DevTools |
APOLLO_CLIENT_TOOLS |
Apollo Client Devtools |
BACKBONE_DEBUGGER |
Backbone Debugger |
EMBER_INSPECTOR |
Ember Inspector |
MOBX_DEVTOOLS |
MobX DevTools |
PREACT_DEVELOPER_TOOLS |
Preact Developer Tools |
REACT_DEVELOPER_TOOLS |
React Developer Tools |
REDUX_DEVTOOLS |
Redux DevTools |
SOLID_DEVTOOLS |
Solid Devtools |
SVELTE_DEVTOOLS |
Svelte DevTools |
VUEJS_DEVTOOLS |
Vue.js DevTools |
VUEJS_DEVTOOLS_BETA |
Vue.js devtools (beta) |
VUEJS_DEVTOOLS_V5 |
Vue.js devtools (v5) |
VUEJS_DEVTOOLS_V6 |
Vue.js devtools (v6) |
install chrome extension for electron
- extensionIds:
string | string[]- Chrome extension id - options: Install extension options
- loadExtensionOptions: session.LoadExtensionOptions
- forceDownload:
boolean- Force to download the extension even if it's already installed, default isfalse - source:
'chrome' | 'unpkg' | 'jsdelivr' | 'npmmirror'- Download url source. When the OS language iszh_CN, the default value isnpmmirror, otherwise it ischrome. - session:
'string' | 'Electron.Session'- The target session on which the extension shall be installed, default issession.defaultSession.
Returns Promise<Electron.Extension | Electron.Extension[]> - extension name/version, etc.
download chrome extension for electron
- extensionId:
string- Chrome extension id - options: Download extension options
- force:
boolean- Force to download the extension even if it's already installed, default isfalse - unzip:
boolean- Whether to unzip the downloaded file, default istrue - attempts:
number- Number of attempts to download the extension, default is5 - outPath:
string- The path to save the downloaded extension, default ispath.join(app.getPath('userData'), 'extensions') - source:
'chrome' | 'unpkg' | 'jsdelivr' | 'npmmirror'- Download url source. When the OS language iszh_CN, the default value isnpmmirror, otherwise it isunpkg.
- force:
Returns Promise<{ filePath: string; unzipPath?: string }>
pnpm jest --verbose false