Skip to content
_CORE
AI & Agentic Systems Core Information Systems Cloud & Platform Engineering Data Platform & Integration Security & Compliance QA, Testing & Observability IoT, Automation & Robotics Mobile & Digital Banking & Finance Insurance Public Administration Defense & Security Healthcare Energy & Utilities Telco & Media Manufacturing Logistics & E-commerce Retail & Loyalty
References Technologies Blog Know-how Tools
About Collaboration Careers
CS EN DE
Let's talk

Electron: desktop applications with web technologies

28. 07. 2015 2 min read CORE SYSTEMSdevelopment
Electron: desktop applications with web technologies

GitHub Electron (formerly Atom Shell) lets you build cross-platform desktop applications in HTML, CSS, and JavaScript. VS Code, Slack, and Atom — all run on Electron.

Web technologies on the desktop

Electron combines a Chromium renderer with a Node.js runtime. The result? A full-featured desktop application with access to the file system, system notifications, native menus, and tray icons — all in JavaScript.

GitHub developed Electron for its Atom editor and subsequently open-sourced it. Today, VS Code, Slack, Discord, WhatsApp Desktop, and hundreds of other applications run on Electron.

Architecture: Main and Renderer process

Electron has two types of processes:

// Main process (main.js)
const { app, BrowserWindow } = require('electron');

app.on('ready', () => {
  const win = new BrowserWindow({ width: 1200, height: 800 });
  win.loadURL('file://' + __dirname + '/index.html');
});

Main process — manages windows, system interactions, and the application lifecycle. One per application.

Renderer process — each window is a separate Chromium renderer. It can use Node.js APIs via IPC communication with the main process.

Advantages and criticism

The advantages of Electron are clear:

  • A single codebase for Windows, macOS, and Linux
  • A vast ecosystem of npm packages
  • Rapid prototyping — a web developer can build a desktop app
  • Chromium DevTools for debugging

The criticism is also valid:

  • High RAM consumption (every app = a Chromium instance)
  • Large distribution size (~100 MB minimum)
  • Slower startup compared to native applications
  • Inconsistent look & feel with the platform

Distribution and updates

Electron provides tools for professional distribution:

  • electron-packager — packaging into a platform-specific binary
  • electron-builder — installers for Windows (NSIS), macOS (DMG), Linux (deb/rpm)
  • autoUpdater — automatic updates (Squirrel framework)
  • Code signing for trusted distribution

Conclusion: a pragmatic choice

Electron is not ideal for every desktop application, but it is a pragmatic choice for teams with web experience. If your application does not require extreme performance or a minimal footprint, Electron will save you months of development compared to native alternatives.

electrondesktopcross-platformnode.jsjavascriptchromium
Share:

CORE SYSTEMS

We build core systems and AI agents that keep operations running. 15 years of experience with enterprise IT.

Need help with implementation?

Our experts can help with design, implementation, and operations. From architecture to production.

Contact us