Black Lives Matter. Support the Equal Justice Initiative and read our statement here.

Electron Documentation


Monitor power state changes.

Process: Main

This module cannot be used until the ready event of the app module is emitted.

For example:

const { app, powerMonitor } = require('electron')

app.whenReady().then(() => {
  powerMonitor.on('suspend', () => {
    console.log('The system is going to sleep')


The powerMonitor module emits the following events:

Event: 'suspend' Linux Windows

Emitted when the system is suspending.

Event: 'resume' Linux Windows

Emitted when system is resuming.

Event: 'on-ac' Windows

Emitted when the system changes to AC power.

Event: 'on-battery' Windows

Emitted when system changes to battery power.

Event: 'shutdown' Linux macOS

Emitted when the system is about to reboot or shut down. If the event handler invokes e.preventDefault(), Electron will attempt to delay system shutdown in order for the app to exit cleanly. If e.preventDefault() is called, the app should exit as soon as possible by calling something like app.quit().

Event: 'lock-screen' macOS Windows

Emitted when the system is about to lock the screen.

Event: 'unlock-screen' macOS Windows

Emitted as soon as the systems screen is unlocked.


The powerMonitor module has the following methods:


  • idleThreshold Integer

Returns String - The system's current state. Can be active, idle, locked or unknown.

Calculate the system idle state. idleThreshold is the amount of time (in seconds) before considered idle. locked is available on supported systems only.


Returns Integer - Idle time in seconds

Calculate system idle time in seconds.

Keyboard Shortcuts

Key Action
/ Focus the search bar
Esc Focus the search bar and cleans it
Select the next search result
Select the previous search result
Enter Open the selected search result
cmdEnter Ctrl+Enter Open the selected search result in a new tab