Tweeten application for the Electron framework

Building for Windows on Arm on Electron requires version 6.0.8 or newer. Tweeten is an example of an application that ran on an older version of Electron, and was upgraded to a new version of Electron and then ported to Windows on Arm.


Porting Tweeten

Tweeten was built on Electron 3 but building for Windows on Arm requires Electron 6.0.8 or newer. All of Tweeten’s code was upgraded to Electron 7.0. The Electron upgrade was the largest bit of work involved in porting Tweeten.

Tweeten was created on Visual Studio Code, so there was no need to change development environment.

Tweeten had no third party or internal dependency issues once the Electron framework was upgraded. This is the case for many Electron apps, especially those that are almost entirely JavaScript.

Tweeten was tested on a Microsoft Surface Pro X. It was not necessary to set up the Surface Pro X for debugging because Tweeten - like most Electron apps - is mainly JavaScript, and JavaScript can be adjusted as it runs.

Tweeten was uploaded to the Windows Store, because at the time NSIS had no Electron integration. It was initially uploaded with the wrong Windows 10 target and generated an error. When the target was changed, the upload worked.

Note: NSIS 3.04 or newer integrates with Electron and electron-builder 22.0.0 or newer.


Comparing Tweeten performance

Running Tweeten natively rather than on a Win32 emulator improves performance:

  • CPU usage on start-up: 20% on native, 30% on the emulator.
  • CPU usage while running: 4% on native, 7% on the emulator.
  • Overall CPU performance improvement of 33-42%, with the accompanying battery savings.
  • From the user’s perspective, outside of start-up time and window resizing, there is not much difference between the two modes. However, when running multiple applications in parallel to Tweeten, performance improvements and battery-life savings add up.
Previous Next