Electron Blog
All the latest news from the Electron team and community.
-
Electron 12.0.0
Electron 12.0.0 has been released! It includes upgrades to Chromium
89
, V88.9
and Node.js14.16
. We've added changes to the remote module, new defaults for contextIsolation, a new webFrameMain API, and general improvements. Read below for more details! -
Electron 11.0.0
Electron 11.0.0 has been released! It includes upgrades to Chromium
87
, V88.7
, and Node.js12.18.3
. We've added support for Apple silicon, and general improvements. Read below for more details! -
Apple Silicon Support
With Apple Silicon hardware being released later this year, what does the path look like for you to get your Electron app running on the new hardware?
-
Community Discord Server and Hacktoberfest
Join us for community bonding and a month-long celebration of open-source.
-
Electron 10.0.0
Electron 10.0.0 has been released! It includes upgrades to Chromium
85
, V88.5
, and Node.js12.16
. We've added several new API integrations and improvements. Read below for more details! -
Electron becomes an OpenJS Foundation Impact Project
At OpenJS World this morning, we announced that Electron has officially graduated from the OpenJS Foundation's incubation program, and is now an OpenJS Foundation Impact Project.
Electron entered incubation in December of 2019, at the last OpenJS Foundation global conference in Montreal. We're excited to take a larger role in the JavaScript community as an Impact Project, and continue our partnership with the OpenJS Foundation.
-
Google Season of Docs
Electron is proud to be participating in the second edition of Google's Season of Docs initiative, which pairs mentors from open source organizations with technical writers to improve project documentation.
-
Electron 9.0.0
Electron 9.0.0 has been released! It includes upgrades to Chromium
83
, V88.3
, and Node.js12.14
. We've added several new API integrations for our spellchecker feature, enabled PDF viewer, and much more! -
Upcoming Electron Releases
Electron is temporarily pausing major releases
-
Electron 8.0.0
Electron 8.0.0 has been released! It includes upgrades to Chromium
80
, V88.0
, and Node.js12.13.0
. We've added Chrome's built-in spellchecker, and much more! -
Electron joins the OpenJS Foundation
At Node+JS Interactive in Montreal, the OpenJS Foundation announced that it accepted Electron into the Foundation's incubation program. The Foundation is committed to supporting the healthy growth of the JavaScript ecosystem and web technologies by providing a neutral organization to host and sustain projects, as well as collaboratively fund activities for the benefit of the community at large.
The OpenJS Foundation is host to a number of open source JavaScript projects including jQuery, Node.js, and webpack. It's supported by 30 corporate and end-user members, including GoDaddy, Google, IBM, Intel, Joyent, and Microsoft. Electron is an open–source framework for building cross-platform desktop applications with web technologies.
This is an exciting move for Electron, and we see it as a next step in our evolution as an open-source project.
-
Chromium WebAudio Vulnerability Fix (CVE-2019-13720)
A High severity vulnerability has been discovered in Chrome which affects all software based on Chromium, including Electron.
This vulnerability has been assigned
CVE-2019-13720
. You can read more about it in the [Chrome Blog Post][announcement].Please note that Chrome has reports of this vulnerability being used in the wild so it is strongly recommended you upgrade Electron as soon as possible.
-
Electron 7.0.0
Electron 7.0.0 has been released! It includes upgrades to Chromium 78, V8 7.8, and Node.js 12.8.1. We've added a Window on Arm 64 release, faster IPC methods, a new
nativeTheme
API, and much more! -
Electron 6.0.0
The Electron team is excited to announce the release of Electron 6.0.0! You can install it with npm via
npm install electron@latest
or download it from our releases website. The release is packed with upgrades, fixes, and new features. We can't wait to see what you build with them! Continue reading for details about this release, and please share any feedback you have! -
New Electron Release Cadence
🎉 Electron is moving to release a new major stable version every 12 weeks! 🎉
-
Electron 5.0.0
The Electron team is excited to announce the release of Electron 5.0.0! You can install it with npm via
npm install electron@latest
or download the tarballs from our releases page. The release is packed with upgrades, fixes, and new features. We can't wait to see what you build with them! Continue reading for details about this release, and please share any feedback you have! -
From native to JavaScript in Electron
How do Electron's features written in C++ or Objective-C get to JavaScript so they're available to an end-user?
-
Electron Governance
As Electron grows in popularity for desktop applications, the team working on it has also grown: we have more fulltime maintainers who work for different companies, live in different timezones, and have different interests. We're introducing a governance structure so we can keep growing smoothly.
-
Chromium FileReader Vulnerability Fix
A High severity vulnerability has been discovered in Chrome which affects all software based on Chromium, including Electron.
This vulnerability has been assigned
CVE-2019-5786
. You can read more about it in the Chrome Blog Post.Please note that Chrome has reports of this vulnerability being used in the wild so it is strongly recommended you upgrade Electron ASAP.
-
Discontinuing support for 32-bit Linux
The Electron team will discontinue support for 32-bit Linux (ia32 / i386) starting with Electron v4.0. The last version of Electron that supports 32-bit based installations of Linux is Electron v3.1, which will receive support releases until Electron v6 is released. Support for 64-bit based Linux and
armv7l
will continue unchanged. -
BrowserView window.open() Vulnerability Fix
A code vulnerability has been discovered that allows Node to be re-enabled in child windows.
-
Node.js Native Addons and Electron 5.0
If you're having trouble using a native Node.js addon with Electron 5.0, there's a chance it needs to be updated to work with the most recent version of V8.
-
Electron v5.0.0 Timeline
For the first time ever, Electron is excited to publicize our release schedule starting with v5.0.0. This is our first step in having a public, long-term timeline.
-
Electron 4.0.0
The Electron team is excited to announce that the stable release of Electron 4 is now available! You can install it from electronjs.org or from npm via
npm install electron@latest
. The release is packed with upgrades, fixes, and new features, and we can't wait to see what you build with them. Read more for details about this release, and please share any feedback you have as you explore! -
SQLite Vulnerability Fix
A remote code execution vulnerability, "Magellan," has been discovered affecting software based on SQLite or Chromium, including all versions of Electron.
-
Electron App Feedback Program
Electron is working on making its release cycles faster and more stable. To make that possible, we've started the App Feedback Program for large-scale Electron apps to test our beta releases and report app-specific issues to us. This helps us to prioritize work that will get applications upgraded to our next stable release sooner.
Edit (2020-05-21): This program has been retired.
-
Electron 3.0.0
The Electron team is excited to announce that the first stable release of Electron 3 is now available from electronjs.org and via
npm install electron@latest
! It's jam-packed with upgrades, fixes, and new features, and we can't wait to see what you build with them. Below are details about this release, and we welcome your feedback as you explore. -
Using GN to Build Electron
Electron now uses GN to build itself. Here's a discussion of why.
-
WebPreferences Vulnerability Fix
A remote code execution vulnerability has been discovered affecting apps with the ability to open nested child windows on Electron versions (3.0.0-beta.6, 2.0.7, 1.8.7, and 1.7.15). This vulnerability has been assigned the CVE identifier [CVE-2018-15685].
-
Search
The Electron website has a new search engine that delivers instant results for API docs, tutorials, Electron-related npm packages, and more.
-
Internationalization Updates
Ever since the launch of the new internationalized Electron website, we have been working hard to make the Electron development experience even more accessible to developers outside of the English speaking world.
So here we are with some exciting i18n updates!
-
Electron 2.0.0
After more than four months of development, eight beta releases, and worldwide testing from many apps' staged rollouts, the release of Electron 2.0.0 is now available from electronjs.org.
-
Easier AutoUpdating for Open-Source Apps
Today we're releasing a free, open-source, hosted [updates webservice][update.electronjs.org] and companion [npm package][update-electron-app] to enable easy automatic updates for open-source Electron apps. This is a step toward empowering app developers to think less about deployment and more about developing high-quality experiences for their users.
-
New in Electron 2: In-App Purchases
The new Electron 2.0 release line is packed with new features and fixes. One of the highlights from this new major version is a new
inAppPurchase
API for Apple's Mac App Store. -
Webview Vulnerability Fix
A vulnerability has been discovered which allows Node.js integration to be re-enabled in some Electron applications that disable it. This vulnerability has been assigned the CVE identifier CVE-2018-1000136.
-
Website Hiccups
Last week the electronjs.org site had a few minutes of downtime. If you were affected by these brief outages, we're sorry for the inconvenience. After a bit of investigation today, we've diagnosed the root cause and have deployed a fix.
-
Protocol Handler Vulnerability Fix
A remote code execution vulnerability has been discovered affecting Electron apps that use custom protocol handlers. This vulnerability has been assigned the CVE identifier [CVE-2018-1000006].
-
Electron 2.0 and Beyond - Semantic Versioning
A new major version of Electron is in the works, and with it some changes to our versioning strategy. As of version 2.0.0, Electron will strictly adhere to Semantic Versioning.
-
Electron's New Internationalized Website
Electron has a new website at [electronjs.org]! We've replaced our static Jekyll site with a Node.js webserver, giving us flexibility to internationalize the site and paving the way for more exciting new features.
- Chromium RCE Vulnerability Fix
-
Announcing TypeScript support in Electron
The
electron
npm package now includes a TypeScript definition file that provides detailed annotations of the entire Electron API. These annotations can improve your Electron development experience even if you're writing vanilla JavaScript. Justnpm install electron
to get up-to-date Electron typings in your project. -
Project of the Week: Jasper
This week we interviewed the creator of [Jasper], an Electron-based tool for managing GitHub notifications.
-
Project of the Week: WebTorrent
This week we caught up with @feross and @dcposch to talk about WebTorrent, the web-powered torrent client that connects users together to form a distributed, decentralized browser-to-browser network.
-
Touch Bar Support
The Electron [1.6.3] beta release contains initial support for the macOS [Touch Bar].
-
Project of the Week: Voltra
This week we met with Aprile Elcich and Paolo Fragomeni to talk about Voltra, an Electron-powered music player.
-
Electron Internals: Building Chromium as a Library
Electron is based on Google's open-source Chromium, a project that is not necessarily designed to be used by other projects. This post introduces how Chromium is built as a library for Electron's use, and how the build system has evolved over the years.
-
Project of the Week: WordPress Desktop
This week we caught up with folks at Automattic to talk about WordPress Desktop, an open-source desktop client for managing WordPress content.
-
Project of the Week: Dat
This week's featured project is Dat, a grant-funded, open source, decentralized tool for distributing data sets. Dat is built and maintained by a geodistributed team, many of whom helped write this post.
-
Project of the Week: Ghost
This week we chatted with Felix Rieseberg, desktop engineer at Slack and maintainer of Ghost Desktop, an Electron client for the Ghost publishing platform.
-
Project of the Week: Beaker Browser
This week we caught up with Paul Frazee, creator of Beaker Browser. Beaker is an experimental peer-to-peer web browser that uses the Dat protocol to host sites from users’ devices.
-
Project of the Week: Kap
The Electron community is growing quickly, and people are creating powerful new apps and tools at an astounding rate. To celebrate this creative momentum and keep the community informed of some of these new projects, we've decided to start a weekly blog series featuring noteworthy Electron-related projects.
-
Electron Simple Samples
We recently hosted an Electron hackathon at GitHub HQ for members of Hackbright Academy, a coding school for women founded in San Francisco. To help attendees get a head start on their projects, our own Kevin Sawicki created a few sample Electron applications.
-
Electron Userland
We've added a new userland section to the Electron website to help users discover the people, packages, and apps that make up our flourishing open-source ecosystem.
-
Certificate Transparency Fix
Electron [1.4.12] contains an important patch that fixes an upstream Chrome issue where some Symantec, GeoTrust, and Thawte SSL/TLS certificates are incorrectly rejected 10 weeks from the build time of [libchromiumcontent], Electron's underlying Chrome library. There are no issues with the certificates used on the affected sites and replacing these certificates will not help.
-
September 2016: New Apps
Here are the new Electron apps and talks that were added to the site in September.
-
Electron's API Docs as Structured Data
Today we're announcing some improvements to Electron's documentation. Every new release now includes a JSON file that describes all of Electron's public APIs in detail. We created this file to enable developers to use Electron's API documentation in interesting new ways.
-
Electron Internals: Weak References
As a language with garbage collection, JavaScript frees users from managing resources manually. But because Electron hosts this environment, it has to be very careful avoiding both memory and resources leaks.
This post introduces the concept of weak references and how they are used to manage resources in Electron.
-
August 2016: New Apps
Here are the new Electron apps that were added to the site in August.
-
Accessibility Tools
Making accessible applications is important and we're happy to introduce new functionality to Devtron and Spectron that gives developers the opportunity to make their apps better for everyone.
-
npm install electron
As of Electron version 1.3.1, you can
npm install electron --save-dev
to install the latest precompiled version of Electron in your app. -
Electron Internals: Using Node as a Library
This is the second post in an ongoing series explaining the internals of Electron. Check out the [first post][event-loop] about event loop integration if you haven't already.
Most people use Node for server-side applications, but because of Node's rich API set and thriving community, it is also a great fit for an embedded library. This post explains how Node is used as a library in Electron.
-
July 2016: New Apps and Meetups
We're starting a monthly roundup to highlight activity in the Electron community. Each roundup will feature things like new apps, upcoming meetups, tools, videos, etc.
-
Electron Internals: Message Loop Integration
This is the first post of a series that explains the internals of Electron. This post introduces how Node's event loop is integrated with Chromium in Electron.
-
Electron Podcasts
Looking for an introduction to Electron? Two new podcasts have just been released that give a great overview of what it is, why it was built, and how it is being used.
-
Electron 1.0
For the last two years, Electron has helped developers build cross platform desktop apps using HTML, CSS, and JavaScript. Now we're excited to share a major milestone for our framework and for the community that created it. The release of Electron 1.0 is now available from [electronjs.org][electronjs.org].
-
What's new in Electron 0.37
Electron
0.37
was recently released and included a major upgrade from Chrome 47 to Chrome 49 and also several new core APIs. This latest release brings in all the new features shipped in Chrome 48 and Chrome 49. This includes CSS custom properties, increased ES6 support,KeyboardEvent
improvements,Promise
improvements, and many other new features now available in your Electron app. -
Use V8 and Chromium Features in Electron
Building an Electron application means you only need to create one codebase and design for one browser, which is pretty handy. But because Electron stays up to date with Node.js and Chromium as they release, you also get to make use of the great features they ship with. In some cases this eliminates dependencies you might have previously needed to include in a web app.
-
API Changes Coming in Electron 1.0
Since the beginning of Electron, starting way back when it used to be called Atom-Shell, we have been experimenting with providing a nice cross-platform JavaScript API for Chromium's content module and native GUI components. The APIs started very organically, and over time we have made several changes to improve the initial designs.
-
Mac App Store and Windows Auto Updater on Electron
Recently Electron added two exciting features: a Mac App Store compatible build and a built-in Windows auto updater.
-
What's New in Electron
There have been some interesting updates and talks given on Electron recently, here's a roundup.
-
Electron Meetup at GitHub HQ
Join us September 29th at GitHub's HQ for an Electron meetup hosted by Atom team members @jlord and @kevinsawicki. There will be talks, food to snack on, and time to hangout and meet others doing cool things with Electron. We'll also have a bit of time to do lightning talks for those interested. Hope to see you there!
-
Electron Documentation
This week we've given Electron's documentation a home on electronjs.org. You can visit /docs/latest for the latest set of docs. We'll keep versions of older docs, too, so you're able to visit /docs/vX.XX.X for the docs that correlate to the version you're using.
-
Atom Shell is now Electron
Atom Shell is now called Electron. You can learn more about Electron and what people are building with it at its new home [electronjs.org][electron].