Generates fingerprints for electron version detection by downloading electron releases and generating checksums of the files contained in each release.
Go to file
github-actions[bot] a3db6d28d9 2024.7.20
2024-07-20 18:07:17 +00:00
.github Create FUNDING.yml 2022-05-27 07:26:27 +00:00
hashes Update Electron Fingerprints 2024-07-20 18:07:16 +00:00
lookup Update Electron Fingerprints 2024-07-20 18:07:16 +00:00
.editorconfig new releases 2022-03-05 14:02:50 +05:30
.gitignore New release 2022-01-13 12:29:02 +05:30
.npmignore ignore Makefile for npm package 2022-02-21 21:02:52 +05:30 Automatically publish to self NPM repository 2022-03-31 13:19:08 +05:30
index.js Move lookup tables to separate directory 2021-07-18 17:18:41 +05:30
LICENSE Update LICENSE 2022-05-23 14:53:19 +00:00
package-lock.json 2024.7.20 2024-07-20 18:07:17 +00:00
package.json 2024.7.20 2024-07-20 18:07:17 +00:00 Improve README [skip ci] 2022-04-30 21:28:26 +05:30
test.js [tests] fix tests 2022-03-31 13:19:08 +05:30
update.php New Electron releases 2022-03-25 12:19:02 +05:30

electron-fingerprints Zero Dependencies GitHub release (latest by date) GitHub tag (latest SemVer) GitHub repo size

Generates fingerprints for electron version detection by downloading electron releases and generating checksums (sha1 hashes) of the files contained in each release. Published as a lookup table on the GitHub NPM Registry.


You can use this to guess which electron version is being used in a given application. A given electron version is (almost always) tightly bound to a node and chrome release as well, so you get a better sense of what the application is running.

Written as the backend for which-electon.


See the GitHub documentation to configure the GitHub Packages NPM Registry.

Install from the command line:

npm install @captn3m0/electron-fingerprints

Install via package.json:

"@captn3m0/electron-fingerprints": "*"


This repository only contains the raw data files, see which-electron for a usable package. The lookup.json files are published as the @captn3m0/electron-fingerprints package on the GitHub NPM Package Registry as well as on GitHub Releases. Programmatic usage is still possible:

const lookup = require("@captn3m0/electron-fingerprints");
// baf786083f482c1f035e50e105b5f7475af1e00b = sha1(ffmpeg.dll)
// ["v1.4.3", "v1.4.4", "v1.4.5"]

You can sort or filter the returned versions if needed. If you'd like to access the raw data, see for a schema description. If you'd like to use this in a project that doesn't use NPM, you can use this repository as a git submodule and track the main branch for updates.

supported releases

All Stable electron releases for the following architectures are fingerprinted:

  • linux-x64
  • linux-arm64
  • darwin-x64 (Mac OS)
  • win32-x64 (Windows)
  • win32-arm64 (Windows)
  • darwin-arm64 (Apple Silicon)

A list of release fingerprints is under the hashes directory. Releases made when Electron was still called atom-shell are not supported (Before April 2015).


Releases are versioned by the date on which they were made (as per UTC).


Released under WTFPL.