sudhakar3697/awesome-electron-alternatives

A curated list of awesome Electron alternatives.

2,205

197 commits

updated Oct 4, 2026

See the code

README

👓 Awesome Electron.js Alternatives

Maintenance Maintainer Ask Me Anything ! GitHub license GitHub commits GitHub forks GitHub stars GitHub watchers GitHub contributors GitHub issues GitHub issues-closed GitHub open-pull-requests GitHub pull-requests closed GitHub branches made-with-markdown GitHub latest commit

A curated list of awesome Electron alternatives.

Electron is an open-source framework for creating desktop apps using web technologies as JavaScript, HTML and CSS. It combines the Chromium rendering engine and the Node.js runtime.

There are a number of good reasons to avoid Electron or consider something other than Electron:

  • Large size
  • Resource (RAM) hogging
  • Source code protection
  • We would already have a web component in the system that can be used.
  • Minimal resources
  • Development platform like nodecode as Kodular, lowcode as Outsystems, database as a service as Astra DB, backend as service, mobile as a service, frontend as a service as Figma, banking as a service ...
  • visual programming paradigm (this includes solutions or technologies like development platform, blockly, serverless, dbdiagram and programming language as elm, python, v ...)
  • It is possible to develop games with Electron-js, but for good game development it is not recommended
  • create data analysis and statistics with js libraries and electron-js for dashboards, however it is also not recommended

👓 Alternatives to the Electron.js ⚛

You can click of the license badges to learn more, try it out on this one: License

C#(.Net)

ProjectDescriptionLicense
AvaloniaAvalonia UI creates pixel-perfect, native, create Multi-Platform Apps with .NETLicense
UnoPixel-Perfect Multi-Platform Applications with C# and WinUI.License*
ChromelyBuild HTML Desktop Apps on .NET/.NET Core/.NET 5 using native GUI, HTML5, JavaScript, CSS.License**
SpiderEyeCross platform .Net Core applications with a webview UI.License**
Photino.NETPhotino uses the OSs built-in WebKit-based browser control for Windows, macOS and Linux. Photino is the lightest cross-platform framework. Compared to Electron, a Photino app is up to 110 times smaller! And it uses far less system memory too!.License
PhotinoXMaintained fork of Photino.NET for building lightweight cross-platform .NET desktop applications with native OS WebViews, explicit application lifetime, centralized UI-thread dispatching, and native-driven window state tracking.License
fotonPrototype for an Electron alternative written in C# by Integrative Software LLC and contributors.License**
InfiniFrameA modern evolution of Photino, enabling lightweight, high-performance cross-platform desktop apps with .NETLicense

* Some features locked behind subscription

** Unmaintained

C/C++

ProjectDescriptionLicense
QtQt (pronounced "cute") is free and open-source cross-platform software for creating graphical user interfaces as well as cross-platform applications.License OR License
wxWidgetswxWidgets is a C++ library that lets developers create applications for Windows, macOS, Linux and other platforms with a single code base. It has popular language bindings for Python, Ruby, Lua, Perl and several other languages. Uses a less restrictive version of the L-GPL allowing you to use a GPL license while still allowing you use it within proprietary software, click the badge to learn more.License
sciterEmbeddable HTML/CSS/JavaScript engine for modern UI development.License
UltralightUltra-fast, ultra-light, standards-compliant HTML renderer for applications and games. Based on WebKit— supports most modern HTML5, CSS, and JavaScript features while still remaining light and configurable.License
WebviewTiny cross-platform webview library which uses Cocoa/WebKit on macOS, gtk-webkit2 on Linux and Edge on Windows 10.License
Saucer🛸 Next-gen desktop apps with web-frontend in C++.License
PhotinoX.CppA modern C++20 application framework for building lightweight, cross-platform, multi-window desktop applications with HTML, CSS, JavaScript, and native OS WebViews. Provides application lifetime management, dispatching, window management, typed events, native dialogs, notifications, custom schemes, and WebView messaging on Windows, macOS, and Linux.License
tinyThis is a tiny alternative to electron.License*
UnityHubA native alternative to the heavy Electron Unity Hub, written in C++. UnityHubNative is a lightweight C++ / wxWidgets alternative to the unnecessarily heavy official Unity Hub, built using wxWidgets. This means that, instead of using heavy web components like the official Electron hub, it uses native GUI components on all platforms. It launches many times faster, uses far less memory and CPU, and is a fraction of the total size of the offical Unity Hub.License
RenWebCross-platform desktop application framework for building native GUI apps using HTML, CSS, and JavaScript frontend with C++ backend. Produces ~2 MB executables without requiring Chromium or Node.js runtime. Supports Windows, macOS, and Linux with native webview rendering.License

* Unmaintained

Crystal

ProjectDescriptionLicense
Crystal WebviewCrystal language bindings for webview, a tiny cross-platform webview library which uses Cocoa/WebKit on macOS, gtk-webkit2 on Linux and Edge on Windows 10)License

Dart

ProjectDescriptionLicense
flutterFlutter is an open source framework by Google for building beautiful, natively compiled, multi-platform applications from a single codebaseLicense

Delphi

ProjectDescriptionLicense
FMX (FireMonkey)The FireMonkey® framework is the app development and runtime platform behind RAD Studio, Delphi and C++Builder. FireMonkey is designed for teams building multi-device, true native apps for Windows, OS X, Android and iOS, and getting them to app stores and enterprises fast.License

Elm

ProjectDescriptionLicense
Elm UIUI library for making web applications with Elm.License*

* Unmaintained

Go

ProjectDescriptionLicense
lorcaBuild cross-platform modern desktop apps in Go + HTML5.License
wailsCreate beautiful applications using Go.License
muonLightweight alternative to Electron written in Golang in about ~300 LoC, using Ultralight instead of Chromium.License*
FyneCross-platform GUI toolkit in Go inspired by Material Design.License

* Unmaintained

Guile

ProjectDescriptionLicense
guile-pstkPS/TK version fixed to work fine on modern GNU GuileLicense*
guile-webviewWrapper for using libwebview from GNU GuileLicense

* Unmaintained

Haskell

ProjectDescriptionLicense
FudgetsFudgets is primarily a Graphical User Interface Toolkit for Haskell and the X Windows system. Fudgets also makes it easy to create client-server applications that communicate via the Internet. It runs on Unix but not on Windows.License*
Keera HailsKeera Hails is a library to connect values that change with one another using rules or relations. Keera Hails is back-end agnostic and not exclusive to GUIs; it has backends for Gtk+ but also hardware (wiimotes), files, sockets and FRP-driven networks (using Yampa), and experimental backends for wx, qt, HTML DOM (using GHCJS) and Android's widget toolkit. It has been used commercially in production in medium-sized applications (10K-20K locs).License*
Threepenny-guiThreepenny-gui is a GUI framework that uses the web browser as a display. It supports Functional Reactive Programming.License
webviewhswebviewhs is a Haskell binding to the webview library created by Serge Zaitsev. This binding allows the creation of rich web-based UI experiences wrapped up in the powerful, type-safe embrace of Haskell. To render the UI it uses Cocoa/WebKit on macOS, gtk-webkit2 on Linux and MSHTML (IE10/11) on Windows.License
MonomerMonomer is an easy to use, cross platform, GUI library for writing native Haskell applications. It provides a framework similar to the Elm Architecture, allowing the creation of GUIs using an extensible set of widgets with pure Haskell.License

* Unmaintained

Java

ProjectDescriptionLicense
SwingSwing is a GUI widget toolkit for Java.[1] It is part of Oracle's Java Foundation Classes (JFC) – an API for providing a graphical user interface (GUI) for Java programs.*
OpenJFX or JavaFXJavaFX is an open source, next generation client application platform for desktop, mobile and embedded systems built on Java. It is a collaborative effort by many individuals and companies with the goal of producing a modern, efficient, and fully featured toolkit for developing rich client applications.License
webviewTemplate project for Android Studio that allows you to create an android webview application in minutes. You can use it to create a simple app for your website or as a starting point for your HTML5 based android app.**, ***
VaadinVaadin can integrate backend java (spring) with its own Hilla enviroment to connect in directly to React components - no need for api calls. Here is en example how to compile it in Electron for fully fledged desktop app: https://github.com/MarciaBM/electron-vaadin-hilla-templateLicense****

* Unclear - Look to your java runtime/distrbution for details

** Unmaintained

*** No license provided, USE AT OWN RISK

**** Core is free, but some features are locked behind a subscription

Javascript/TypeScript

ProjectDescriptionLicense
Sciter.JSIs a 5MB HTML/CSS/JS (ES6) runtime aimed as a direct Electron replacement.License
electrinoDesktop runtime for apps built on web technologies, using the system's own web browser engine.License *
nidiumA powerful rendering engine for modern mobile applications. Unlike many solution, nidium doesn't rely on webviews or native OS widgets. Instead, it uses its own high-performance rendering engine to draw custom widgets.License *
modern-htaRun modern code in an HTML Application.License
React Native DesktopCross-platform React Native Desktop port based on Qt framework.*, **
NodeGuiPowered by Qt5, NodeGui-React, Vue NodeGui, Svelte-NodeGuiLicense
AstrodonDesktop App Framework (not there yet!) for Deno, based on TauriLicense *
webview_deno🌐 Deno bindings for webview, a tiny library for creating web-based desktop GUIsLicense
DeskGapbundles a Node.js runtime and leaves the HTML rendering to the operating system‘s webview).License *
NW.jsSimilar to electron, provides Source code protection).License
Neutralinojschromium module is replaced with either user’s web browser or built-in browser component. Node run-time is replaced with a lightweight web server which exposes native OS functionality).License
Proton Nativedoes the same to desktop that React Native did to mobile, based on libui-node.License *
GraffitiHTML/CSS engine for node.js and deno.License *
GluonUses normal system installed browsers (not webviews) and NodeJS, also supports Firefox.License *
AvernakisNodejs addon for Avernakis SDK, use TypeScript to develop modern desktop app with powerful UI kits.License *
WelsonJSBuild Windows desktop apps with JavaScript, HTML, and CSS based on WSH/HTA or GTK.License License
VuidoCreating native desktop applications based on Vue.js, based on libui-nodeLicense *
quasarVue.js based framework, which lets web developer to quickly create responsive websites/apps.License
ProtonShellLightweight shell for websites, simple web applications, built on the Microsoft Edge system browser.* *
ElectrobunElectrobun aims to be a complete solution-in-a-box for building, updating, and shipping ultra-fast, tiny, and cross-platform desktop applications written in Typescript. Under the hood, it uses bun to execute the main process and to bundle webview typescript, and has native bindings written in zig.License: MIT
MōBrowserA framework for creating desktop apps with TypeScript. It comes with source code protection, app auto-updates, signing, and notarization out of the box. It uses Chromium as the browser engine and Node.js as the runtime for the main process. MōBrowser is free for non-commercial use.License: Free License: Free
ButterA lightweight desktop app framework for building native applications with TypeScript, HTML, and CSS. Uses the operating system's webview for rendering and Bun to run the TypeScript backend, with native extensions in C, Rust, or Zig, and a single-file binary output.License

* Unmaintained

** No license provided, USE AT OWN RISK

Julia

ProjectDescriptionLicense
MouseTrapGUI Engine made for JuliaLicense

Kotlin

ProjectDescriptionLicense
Compose MultiplatformDeclarative framework for sharing UIs across multiple platforms. Based on Kotlin and Jetpack Compose. Developed by JetBrains and open-source contributors.License

Nim

ProjectDescriptionLicense
nimxDesktop, Mobile & Web GUI framework in Nim.License
NiGuiA cross-platform, desktop GUI toolkit.License
uiWrapper for libui. Beginnings of what might become Nim's official UI library.License
iupWrapper for IUP. Beginnings of what might become Nim's official UI library.License
SDL2Official wrapper for SDL 2.x.License
SDL2A wrapper for SDL 2.License
OwlkettleDeclarative user interface framework based on GTK.License
wNimNim's Windows GUI Framework.License
gintroHigh-level GObject-Introspection based GTK3/GTK4 bindings for Nim.License
nimqmlQt QML bindings for the Nim programming language.License
NeelA library for making Electron-like HTML/JS GUI apps.License
nimviewA Nim/Webview based helper to create desktop/server applications with Nim and HTML/CSS.License
webguiWeb technologies based cross-platform GUI Framework with a dark theme.License
fidgetFigma based UI library for Nim, with HTML and OpenGL backends.License
imguiImGui bindings for Nim via cimgui.License
nimAntTweakBarWrapper for AntTweakBar.*, **
ggplotnimA port of ggplot2 for Nim.License
plotlyA plotly wrapper for Nim.License
graphA basic plotting library in Nim.License
nimetrySimple plotting in pure Nim.License
nimgraphvizA Nim library for making graphs with GraphViz and DOT.*, **

* Unmaintained

** No license provided, USE AT OWN RISK

No-code\Low-code

ProjectDescriptionLicense
KodularMuch more than a modern app creator without codingLicense
BubbleDesign, develop, and launch production-grade applications without code. It doesn't matter if you’re starting out or on an enterprise team — Bubble is for anyone.License

Pascal/FreePascal

ProjectDescriptionLicense
LazarusThe professional Free Pascal RAD IDE. It is a Delphi compatible cross-platform IDE for Rapid Application Development.License

Perl

ProjectDescriptionLicense
GtkGtk3 - Perl interface to the 3.x series of the gtk+ toolkit.License
PrimaPrima - a perl graphic toolkit.License
Perl Executing BrowserPerl Executing Browser (PEB) is an HTML user interface for Perl 5 desktop applications. It is a C++ Qt 5 application running local Perl scripts as child processes without server. Inspired by Electron and NW.js, PEB is another reuse of web technologies in desktop applications with Perl doing the heavy lifting instead of Node.js.License
TkPerl/Tk is an extension for writing Perl programs with a Graphical User Interface (GUI) on both Unix and Windows 95/NT. Tk was originally developed as an extension to the Tcl language, for use with the X Window System on Unix.License
TkxTkx - Yet another Tk interface.License
WxThe Wx module is a wrapper for the wxWidgets (formerly known as wxWindows) GUI toolkit.License

PHP

ProjectDescriptionLicense
NativePHPNativePHP is a new framework for rapidly building rich, native desktop applications using PHP, HTML, CSS, Javascript.License
PHP TkUIBuild native desktop applications using PHP and Tcl/Tk.**
BOSONBuild native desktop applications using PHP and your favorite framework.License

** No license provided, USE AT OWN RISK

Python

ProjectDescriptionLicense
fbsPython and Qt are great for writing lightweight desktop apps. But packaging, installers, code signing and automatic updates are a pain. fbs solves these problems and saves you months of development.License
PyQtPyQt is a Python binding of the cross-platform GUI toolkit Qt, implemented as a Python plug-in. PyQt is free software developed by the British firm Riverbank Computing.License OR License
PySidePySide is a Python binding of the cross-platform GUI toolkit Qt.License OR License
KivyThe Open Source Python App Development Framework. Build and distribute beautiful Python cross-platform GUI apps with ease. Kivy runs on Android, iOS, Linux, macOS and Windows.License
PyGUIAn project to develop a cross-platform pythonic GUI API.License
FletThe fastest way to build Flutter apps in Python.License
EelA little Python library for making simple Electron-like HTML/JS GUI apps.License *
wxPythonCross-platform GUI toolkit for the Python language. With wxPython software developers can create truly native user interfaces for their Python applications, that run with little or no modifications on Windows, Macs and Linux or other unix-like systems.License
TkinterThe Tkinter module or "Tk interface" is the standard Python interface to the Tk GUI toolkit. Both Tk and Tkinter are available on most Unix platforms, as well as on Windows systems. Tk itself is not part of Python; it is maintained at ActiveState.**
pywebviewBuild GUI for your Python program with JavaScript, HTML, and CSS.License
PysimpleguiPySimpleGUI creates graphical user interfaces (GUIs) using Python, quickly and easily!.License
NiceGUINiceGUI is an approachable web-based UI toolkit for Python that can self-host with auto-refresh as you update the source, with a rich set of UI widgets.License
TogaToga is a Python native, OS native, cross-platform GUI toolkit. Toga consists of a library of base components with a shared interface to simplify platform-agnostic GUI development.License
PyloidPyloid is the Python backend version of Electron and Tauri, providing an open-source project that allows you to easily utilize various Python integration featuresLicense

* Unmaintained

** Unclear

R

ProjectDescriptionLicense
gWidgetsAPI for writing graphical user interfaces (GUIs) within R. The package is cross-platform (Linux/Mac/Windows) and cross-toolkit (RGtk2, qtbase, tcltk).License
fGuiRapidly create a GUI interface for a function you created by automatically creating widgets for arguments of the function. Automatically parses help routines for context-sensitive help to these arguments. The interface essentially a wrapper to some Tcl/Tk routines to both simplify and facilitate GUI creation. More advanced Tcl/Tk routines/GUI objects can be incorporated into the interface for greater customization for the more experienced.License
ShinyEasy web apps for data science without the compromisesLicense

Reason

ProjectDescriptionLicense
revery-uiFast, native, cross-platform UI.License

Rebol

ProjectDescription
Native GuiThe primary objectives of the R3 GUI have been clearly stated in prior documents. However, to be sure we're all in sync: the GUI is designed to make simple apps simple, and sophisticated apps possible. That is, you really can write a useful app in just a few lines of GUI dialect, and a full scale app may require just a few dozen pages

Red

ProjectDescriptionLicense
DrawingDraw is a dialect (DSL) of Red language that provides a simple declarative way to specify 2D drawing operations. Such operations are expressed as lists of ordered commands (using blocks of values), which can be freely constructed and changed at run-time.License
Native GUIThe Red/View (or just View) component is a graphic system for the Red programming language.License
LayoutVID stands for Visual Interface Dialect. Its purpose is to provide a simple dialect (DSL) for describing graphic user interfaces on top of the Red View engine.License

Ruby

ProjectDescriptionLicense
GlimmerA Domain-Specific Language & metaframework for building GUI apps using Ruby, with bindings for various GUI libraries and also Web.License
qtbindingsRuby bindings for Qt.License OR License
tkRuby bindings for Tcl/Tk.License
ruby-gnomeRuby bindings from GNOME/GTK3.License
JRubyFXJRuby wrapper on JavaFX.License
traveling-rubyRuntime to bundle Ruby applications into executables.License

Rust

ProjectDescriptionLicense
gtk-rsRust bindings for GTK.License
tauriBuild smaller, faster, and more secure desktop applications with a web frontend.License and/or License
GPUIA fast, productive UI framework for Rust from the creators of Zed.License
Are we GUI yet?The state of building user interfaces in Rust. A collection of gui frameworks and libraries in rust.---

V

ProjectDescriptionLicense
uiIsaiah's cross-platform GUI library for V. Inspired by the syntax of Java's Swing.License
muiA Cross-Platform UI Library in vlangLicense
viupA V wrapper for the cross-platform UI library, IUP.License
vi-vVi-v is a visual scripting UI for vlang. It allows anyone to create their own programs easily without an extensive programming skill.License
vxuivxui is a cross-platform desktop UI framework which use your browser as screen, and use V lang as backend. It reply on Websocket, no http/https, no web server!License

Visual programming

ProjectDescriptionLicense
BlocklyBlockly is a visual programming editor by Google that uses drag-and-drop blocks. It's the engine that powers the most popular coding education programs world.License

Zig

ProjectDescriptionLicense
zero-nativezero-native is a Zig desktop app shell for modern web frontends. Use the platform WebView when you want the smallest possible app, or bundle Chromium through CEF when rendering consistency matters.License
  • Livecode: Lightweight language with [native GUI], integrated IDE, and visual interface builder.
  • Positron: List of electron apps so I can avoid them, and some alternatives to use instead
  • Awesome Alternatives to Electron Apps: Electron is an application platform which spreads like a cancer in software development world making your immensely powerful computer feel slow and laggy. Sometimes apps made in Electron are useful, though. This list contains good alternatives to an memory hungry eco-unfriendly Electron software.
  • Comparison of Browser Engines: A browser engine (also known as a layout engine or rendering engine) is a core software component of every major web browser. The primary job of a browser engine is to transform HTML documents and other resources of a web page into an interactive visual representation on a user's device. Besides "browser engine", two other related terms are commonly used: "layout engine" and "rendering engine". In theory, layout and rendering (or "painting") could be handled by different engines. In practice, however, these components are tightly coupled and rarely encountered on their own outside of the browser engine.
  • Web To Desktop Framework Comparasion: This repository was made to create an objective comparison of multiple framework that grant us to "transform" our web app to desktop application formats.
  • Awesome-electronjs-hacking: A curated list of awesome resources about Electron.js (in)security
  • Qt: Qt (pronounced "cute") is free and open-source cross-platform software for creating graphical user interfaces as well as cross-platform applications
  • jscherer92/Quark: Create Applications with browser technologies using the native engine in your OS.
  • Xojo: Build Native, Cross-Platform Apps.Rapid application development for Desktop, Web, Mobile & Raspberry Pi.
  • LambdaNative: LambdaNative is freely available under the BSD license, extensively documented, and hosted on GitHub. LambdaNative builds native applications on a wide range of platforms including iOS, Android, Blackberry, OS X, Linux, Windows, OpenBSD, NetBSD, FreeBSD and OpenWrt, from a single source code.
  • REVERY: Fast, native, cross-platform UI.
  • 8th: 8th lets you use your preferred platform to write and test your code. With one click, you generate the executables for any platform 8th supports, from any platform it supports!.
  • CEF: Chromium Embedded Framework (CEF). A simple framework for embedding Chromium-based browsers in other applications.
  • yue/yue: A library for creating native cross-platform GUI apps.
  • Godot: Godot Engine – Multi-platform 2D and 3D game engine.
  • HaxeUI Haxe based cross platform (desktop, mobile, web) UI framework
  • HTA/HTML Application: HTML Application or "HTA" is a Microsoft Windows program whose source code consists of HTML, Dynamic HTML, and one or more scripting languages supported by Internet Explorer, such as VBScript or JScript. The HTML is used to generate the user interface, and the scripting language is used for the program logic. An HTA executes without the constraints of the internet browser security model; in fact, it executes as a "fully trusted" application.

📚 Notes

Consider Progressive Web Apps PWA, if your app doesn't require any platform interactions.

"Progressive Web Apps might not be able to replace every kind of native application, but they can be viable replacements for some apps written with the Electron web wrapper technology". For more info: https://www.androidpolice.com/2020/05/27/google-chats-desktop-application-is-now-a-progressive-web-app/

See this: Blazor, ElectronCGI.

❤ Contributions

awesome-electron-alternatives is open to contributions, but I recommend creating an issue or replying in a comment to let me know what you are working on first that way we don't overwrite each other.

Please read CONTRIBUTING.md for details on this project. If you have any questions, feel free to open an issue. And feel free to improve this list by contributing!

📑 License

  • Inspired by the awesome list.
  • Electron-alternatives is licensed with MIT by sudhakar3697 and contributors.
  • The logo of this project is authored, created or licensed by the Electron-js community (brand, open source project), but has no direct relationship with this repository.

🙌 Contributors

awesome-list
cross-platform-desktop-app-dev
electron
electron-alternatives
pwa

sudhakar3697/awesome-electron-alternatives

A curated list of awesome Electron alternatives.

2,205

197 commits

updated Oct 4, 2026

See the code

README

👓 Awesome Electron.js Alternatives

Maintenance Maintainer Ask Me Anything ! GitHub license GitHub commits GitHub forks GitHub stars GitHub watchers GitHub contributors GitHub issues GitHub issues-closed GitHub open-pull-requests GitHub pull-requests closed GitHub branches made-with-markdown GitHub latest commit

A curated list of awesome Electron alternatives.

Electron is an open-source framework for creating desktop apps using web technologies as JavaScript, HTML and CSS. It combines the Chromium rendering engine and the Node.js runtime.

There are a number of good reasons to avoid Electron or consider something other than Electron:

  • Large size
  • Resource (RAM) hogging
  • Source code protection
  • We would already have a web component in the system that can be used.
  • Minimal resources
  • Development platform like nodecode as Kodular, lowcode as Outsystems, database as a service as Astra DB, backend as service, mobile as a service, frontend as a service as Figma, banking as a service ...
  • visual programming paradigm (this includes solutions or technologies like development platform, blockly, serverless, dbdiagram and programming language as elm, python, v ...)
  • It is possible to develop games with Electron-js, but for good game development it is not recommended
  • create data analysis and statistics with js libraries and electron-js for dashboards, however it is also not recommended

👓 Alternatives to the Electron.js ⚛

You can click of the license badges to learn more, try it out on this one: License

C#(.Net)

ProjectDescriptionLicense
AvaloniaAvalonia UI creates pixel-perfect, native, create Multi-Platform Apps with .NETLicense
UnoPixel-Perfect Multi-Platform Applications with C# and WinUI.License*
ChromelyBuild HTML Desktop Apps on .NET/.NET Core/.NET 5 using native GUI, HTML5, JavaScript, CSS.License**
SpiderEyeCross platform .Net Core applications with a webview UI.License**
Photino.NETPhotino uses the OSs built-in WebKit-based browser control for Windows, macOS and Linux. Photino is the lightest cross-platform framework. Compared to Electron, a Photino app is up to 110 times smaller! And it uses far less system memory too!.License
PhotinoXMaintained fork of Photino.NET for building lightweight cross-platform .NET desktop applications with native OS WebViews, explicit application lifetime, centralized UI-thread dispatching, and native-driven window state tracking.License
fotonPrototype for an Electron alternative written in C# by Integrative Software LLC and contributors.License**
InfiniFrameA modern evolution of Photino, enabling lightweight, high-performance cross-platform desktop apps with .NETLicense

* Some features locked behind subscription

** Unmaintained

C/C++

ProjectDescriptionLicense
QtQt (pronounced "cute") is free and open-source cross-platform software for creating graphical user interfaces as well as cross-platform applications.License OR License
wxWidgetswxWidgets is a C++ library that lets developers create applications for Windows, macOS, Linux and other platforms with a single code base. It has popular language bindings for Python, Ruby, Lua, Perl and several other languages. Uses a less restrictive version of the L-GPL allowing you to use a GPL license while still allowing you use it within proprietary software, click the badge to learn more.License
sciterEmbeddable HTML/CSS/JavaScript engine for modern UI development.License
UltralightUltra-fast, ultra-light, standards-compliant HTML renderer for applications and games. Based on WebKit— supports most modern HTML5, CSS, and JavaScript features while still remaining light and configurable.License
WebviewTiny cross-platform webview library which uses Cocoa/WebKit on macOS, gtk-webkit2 on Linux and Edge on Windows 10.License
Saucer🛸 Next-gen desktop apps with web-frontend in C++.License
PhotinoX.CppA modern C++20 application framework for building lightweight, cross-platform, multi-window desktop applications with HTML, CSS, JavaScript, and native OS WebViews. Provides application lifetime management, dispatching, window management, typed events, native dialogs, notifications, custom schemes, and WebView messaging on Windows, macOS, and Linux.License
tinyThis is a tiny alternative to electron.License*
UnityHubA native alternative to the heavy Electron Unity Hub, written in C++. UnityHubNative is a lightweight C++ / wxWidgets alternative to the unnecessarily heavy official Unity Hub, built using wxWidgets. This means that, instead of using heavy web components like the official Electron hub, it uses native GUI components on all platforms. It launches many times faster, uses far less memory and CPU, and is a fraction of the total size of the offical Unity Hub.License
RenWebCross-platform desktop application framework for building native GUI apps using HTML, CSS, and JavaScript frontend with C++ backend. Produces ~2 MB executables without requiring Chromium or Node.js runtime. Supports Windows, macOS, and Linux with native webview rendering.License

* Unmaintained

Crystal

ProjectDescriptionLicense
Crystal WebviewCrystal language bindings for webview, a tiny cross-platform webview library which uses Cocoa/WebKit on macOS, gtk-webkit2 on Linux and Edge on Windows 10)License

Dart

ProjectDescriptionLicense
flutterFlutter is an open source framework by Google for building beautiful, natively compiled, multi-platform applications from a single codebaseLicense

Delphi

ProjectDescriptionLicense
FMX (FireMonkey)The FireMonkey® framework is the app development and runtime platform behind RAD Studio, Delphi and C++Builder. FireMonkey is designed for teams building multi-device, true native apps for Windows, OS X, Android and iOS, and getting them to app stores and enterprises fast.License

Elm

ProjectDescriptionLicense
Elm UIUI library for making web applications with Elm.License*

* Unmaintained

Go

ProjectDescriptionLicense
lorcaBuild cross-platform modern desktop apps in Go + HTML5.License
wailsCreate beautiful applications using Go.License
muonLightweight alternative to Electron written in Golang in about ~300 LoC, using Ultralight instead of Chromium.License*
FyneCross-platform GUI toolkit in Go inspired by Material Design.License

* Unmaintained

Guile

ProjectDescriptionLicense
guile-pstkPS/TK version fixed to work fine on modern GNU GuileLicense*
guile-webviewWrapper for using libwebview from GNU GuileLicense

* Unmaintained

Haskell

ProjectDescriptionLicense
FudgetsFudgets is primarily a Graphical User Interface Toolkit for Haskell and the X Windows system. Fudgets also makes it easy to create client-server applications that communicate via the Internet. It runs on Unix but not on Windows.License*
Keera HailsKeera Hails is a library to connect values that change with one another using rules or relations. Keera Hails is back-end agnostic and not exclusive to GUIs; it has backends for Gtk+ but also hardware (wiimotes), files, sockets and FRP-driven networks (using Yampa), and experimental backends for wx, qt, HTML DOM (using GHCJS) and Android's widget toolkit. It has been used commercially in production in medium-sized applications (10K-20K locs).License*
Threepenny-guiThreepenny-gui is a GUI framework that uses the web browser as a display. It supports Functional Reactive Programming.License
webviewhswebviewhs is a Haskell binding to the webview library created by Serge Zaitsev. This binding allows the creation of rich web-based UI experiences wrapped up in the powerful, type-safe embrace of Haskell. To render the UI it uses Cocoa/WebKit on macOS, gtk-webkit2 on Linux and MSHTML (IE10/11) on Windows.License
MonomerMonomer is an easy to use, cross platform, GUI library for writing native Haskell applications. It provides a framework similar to the Elm Architecture, allowing the creation of GUIs using an extensible set of widgets with pure Haskell.License

* Unmaintained

Java

ProjectDescriptionLicense
SwingSwing is a GUI widget toolkit for Java.[1] It is part of Oracle's Java Foundation Classes (JFC) – an API for providing a graphical user interface (GUI) for Java programs.*
OpenJFX or JavaFXJavaFX is an open source, next generation client application platform for desktop, mobile and embedded systems built on Java. It is a collaborative effort by many individuals and companies with the goal of producing a modern, efficient, and fully featured toolkit for developing rich client applications.License
webviewTemplate project for Android Studio that allows you to create an android webview application in minutes. You can use it to create a simple app for your website or as a starting point for your HTML5 based android app.**, ***
VaadinVaadin can integrate backend java (spring) with its own Hilla enviroment to connect in directly to React components - no need for api calls. Here is en example how to compile it in Electron for fully fledged desktop app: https://github.com/MarciaBM/electron-vaadin-hilla-templateLicense****

* Unclear - Look to your java runtime/distrbution for details

** Unmaintained

*** No license provided, USE AT OWN RISK

**** Core is free, but some features are locked behind a subscription

Javascript/TypeScript

ProjectDescriptionLicense
Sciter.JSIs a 5MB HTML/CSS/JS (ES6) runtime aimed as a direct Electron replacement.License
electrinoDesktop runtime for apps built on web technologies, using the system's own web browser engine.License *
nidiumA powerful rendering engine for modern mobile applications. Unlike many solution, nidium doesn't rely on webviews or native OS widgets. Instead, it uses its own high-performance rendering engine to draw custom widgets.License *
modern-htaRun modern code in an HTML Application.License
React Native DesktopCross-platform React Native Desktop port based on Qt framework.*, **
NodeGuiPowered by Qt5, NodeGui-React, Vue NodeGui, Svelte-NodeGuiLicense
AstrodonDesktop App Framework (not there yet!) for Deno, based on TauriLicense *
webview_deno🌐 Deno bindings for webview, a tiny library for creating web-based desktop GUIsLicense
DeskGapbundles a Node.js runtime and leaves the HTML rendering to the operating system‘s webview).License *
NW.jsSimilar to electron, provides Source code protection).License
Neutralinojschromium module is replaced with either user’s web browser or built-in browser component. Node run-time is replaced with a lightweight web server which exposes native OS functionality).License
Proton Nativedoes the same to desktop that React Native did to mobile, based on libui-node.License *
GraffitiHTML/CSS engine for node.js and deno.License *
GluonUses normal system installed browsers (not webviews) and NodeJS, also supports Firefox.License *
AvernakisNodejs addon for Avernakis SDK, use TypeScript to develop modern desktop app with powerful UI kits.License *
WelsonJSBuild Windows desktop apps with JavaScript, HTML, and CSS based on WSH/HTA or GTK.License License
VuidoCreating native desktop applications based on Vue.js, based on libui-nodeLicense *
quasarVue.js based framework, which lets web developer to quickly create responsive websites/apps.License
ProtonShellLightweight shell for websites, simple web applications, built on the Microsoft Edge system browser.* *
ElectrobunElectrobun aims to be a complete solution-in-a-box for building, updating, and shipping ultra-fast, tiny, and cross-platform desktop applications written in Typescript. Under the hood, it uses bun to execute the main process and to bundle webview typescript, and has native bindings written in zig.License: MIT
MōBrowserA framework for creating desktop apps with TypeScript. It comes with source code protection, app auto-updates, signing, and notarization out of the box. It uses Chromium as the browser engine and Node.js as the runtime for the main process. MōBrowser is free for non-commercial use.License: Free License: Free
ButterA lightweight desktop app framework for building native applications with TypeScript, HTML, and CSS. Uses the operating system's webview for rendering and Bun to run the TypeScript backend, with native extensions in C, Rust, or Zig, and a single-file binary output.License

* Unmaintained

** No license provided, USE AT OWN RISK

Julia

ProjectDescriptionLicense
MouseTrapGUI Engine made for JuliaLicense

Kotlin

ProjectDescriptionLicense
Compose MultiplatformDeclarative framework for sharing UIs across multiple platforms. Based on Kotlin and Jetpack Compose. Developed by JetBrains and open-source contributors.License

Nim

ProjectDescriptionLicense
nimxDesktop, Mobile & Web GUI framework in Nim.License
NiGuiA cross-platform, desktop GUI toolkit.License
uiWrapper for libui. Beginnings of what might become Nim's official UI library.License
iupWrapper for IUP. Beginnings of what might become Nim's official UI library.License
SDL2Official wrapper for SDL 2.x.License
SDL2A wrapper for SDL 2.License
OwlkettleDeclarative user interface framework based on GTK.License
wNimNim's Windows GUI Framework.License
gintroHigh-level GObject-Introspection based GTK3/GTK4 bindings for Nim.License
nimqmlQt QML bindings for the Nim programming language.License
NeelA library for making Electron-like HTML/JS GUI apps.License
nimviewA Nim/Webview based helper to create desktop/server applications with Nim and HTML/CSS.License
webguiWeb technologies based cross-platform GUI Framework with a dark theme.License
fidgetFigma based UI library for Nim, with HTML and OpenGL backends.License
imguiImGui bindings for Nim via cimgui.License
nimAntTweakBarWrapper for AntTweakBar.*, **
ggplotnimA port of ggplot2 for Nim.License
plotlyA plotly wrapper for Nim.License
graphA basic plotting library in Nim.License
nimetrySimple plotting in pure Nim.License
nimgraphvizA Nim library for making graphs with GraphViz and DOT.*, **

* Unmaintained

** No license provided, USE AT OWN RISK

No-code\Low-code

ProjectDescriptionLicense
KodularMuch more than a modern app creator without codingLicense
BubbleDesign, develop, and launch production-grade applications without code. It doesn't matter if you’re starting out or on an enterprise team — Bubble is for anyone.License

Pascal/FreePascal

ProjectDescriptionLicense
LazarusThe professional Free Pascal RAD IDE. It is a Delphi compatible cross-platform IDE for Rapid Application Development.License

Perl

ProjectDescriptionLicense
GtkGtk3 - Perl interface to the 3.x series of the gtk+ toolkit.License
PrimaPrima - a perl graphic toolkit.License
Perl Executing BrowserPerl Executing Browser (PEB) is an HTML user interface for Perl 5 desktop applications. It is a C++ Qt 5 application running local Perl scripts as child processes without server. Inspired by Electron and NW.js, PEB is another reuse of web technologies in desktop applications with Perl doing the heavy lifting instead of Node.js.License
TkPerl/Tk is an extension for writing Perl programs with a Graphical User Interface (GUI) on both Unix and Windows 95/NT. Tk was originally developed as an extension to the Tcl language, for use with the X Window System on Unix.License
TkxTkx - Yet another Tk interface.License
WxThe Wx module is a wrapper for the wxWidgets (formerly known as wxWindows) GUI toolkit.License

PHP

ProjectDescriptionLicense
NativePHPNativePHP is a new framework for rapidly building rich, native desktop applications using PHP, HTML, CSS, Javascript.License
PHP TkUIBuild native desktop applications using PHP and Tcl/Tk.**
BOSONBuild native desktop applications using PHP and your favorite framework.License

** No license provided, USE AT OWN RISK

Python

ProjectDescriptionLicense
fbsPython and Qt are great for writing lightweight desktop apps. But packaging, installers, code signing and automatic updates are a pain. fbs solves these problems and saves you months of development.License
PyQtPyQt is a Python binding of the cross-platform GUI toolkit Qt, implemented as a Python plug-in. PyQt is free software developed by the British firm Riverbank Computing.License OR License
PySidePySide is a Python binding of the cross-platform GUI toolkit Qt.License OR License
KivyThe Open Source Python App Development Framework. Build and distribute beautiful Python cross-platform GUI apps with ease. Kivy runs on Android, iOS, Linux, macOS and Windows.License
PyGUIAn project to develop a cross-platform pythonic GUI API.License
FletThe fastest way to build Flutter apps in Python.License
EelA little Python library for making simple Electron-like HTML/JS GUI apps.License *
wxPythonCross-platform GUI toolkit for the Python language. With wxPython software developers can create truly native user interfaces for their Python applications, that run with little or no modifications on Windows, Macs and Linux or other unix-like systems.License
TkinterThe Tkinter module or "Tk interface" is the standard Python interface to the Tk GUI toolkit. Both Tk and Tkinter are available on most Unix platforms, as well as on Windows systems. Tk itself is not part of Python; it is maintained at ActiveState.**
pywebviewBuild GUI for your Python program with JavaScript, HTML, and CSS.License
PysimpleguiPySimpleGUI creates graphical user interfaces (GUIs) using Python, quickly and easily!.License
NiceGUINiceGUI is an approachable web-based UI toolkit for Python that can self-host with auto-refresh as you update the source, with a rich set of UI widgets.License
TogaToga is a Python native, OS native, cross-platform GUI toolkit. Toga consists of a library of base components with a shared interface to simplify platform-agnostic GUI development.License
PyloidPyloid is the Python backend version of Electron and Tauri, providing an open-source project that allows you to easily utilize various Python integration featuresLicense

* Unmaintained

** Unclear

R

ProjectDescriptionLicense
gWidgetsAPI for writing graphical user interfaces (GUIs) within R. The package is cross-platform (Linux/Mac/Windows) and cross-toolkit (RGtk2, qtbase, tcltk).License
fGuiRapidly create a GUI interface for a function you created by automatically creating widgets for arguments of the function. Automatically parses help routines for context-sensitive help to these arguments. The interface essentially a wrapper to some Tcl/Tk routines to both simplify and facilitate GUI creation. More advanced Tcl/Tk routines/GUI objects can be incorporated into the interface for greater customization for the more experienced.License
ShinyEasy web apps for data science without the compromisesLicense

Reason

ProjectDescriptionLicense
revery-uiFast, native, cross-platform UI.License

Rebol

ProjectDescription
Native GuiThe primary objectives of the R3 GUI have been clearly stated in prior documents. However, to be sure we're all in sync: the GUI is designed to make simple apps simple, and sophisticated apps possible. That is, you really can write a useful app in just a few lines of GUI dialect, and a full scale app may require just a few dozen pages

Red

ProjectDescriptionLicense
DrawingDraw is a dialect (DSL) of Red language that provides a simple declarative way to specify 2D drawing operations. Such operations are expressed as lists of ordered commands (using blocks of values), which can be freely constructed and changed at run-time.License
Native GUIThe Red/View (or just View) component is a graphic system for the Red programming language.License
LayoutVID stands for Visual Interface Dialect. Its purpose is to provide a simple dialect (DSL) for describing graphic user interfaces on top of the Red View engine.License

Ruby

ProjectDescriptionLicense
GlimmerA Domain-Specific Language & metaframework for building GUI apps using Ruby, with bindings for various GUI libraries and also Web.License
qtbindingsRuby bindings for Qt.License OR License
tkRuby bindings for Tcl/Tk.License
ruby-gnomeRuby bindings from GNOME/GTK3.License
JRubyFXJRuby wrapper on JavaFX.License
traveling-rubyRuntime to bundle Ruby applications into executables.License

Rust

ProjectDescriptionLicense
gtk-rsRust bindings for GTK.License
tauriBuild smaller, faster, and more secure desktop applications with a web frontend.License and/or License
GPUIA fast, productive UI framework for Rust from the creators of Zed.License
Are we GUI yet?The state of building user interfaces in Rust. A collection of gui frameworks and libraries in rust.---

V

ProjectDescriptionLicense
uiIsaiah's cross-platform GUI library for V. Inspired by the syntax of Java's Swing.License
muiA Cross-Platform UI Library in vlangLicense
viupA V wrapper for the cross-platform UI library, IUP.License
vi-vVi-v is a visual scripting UI for vlang. It allows anyone to create their own programs easily without an extensive programming skill.License
vxuivxui is a cross-platform desktop UI framework which use your browser as screen, and use V lang as backend. It reply on Websocket, no http/https, no web server!License

Visual programming

ProjectDescriptionLicense
BlocklyBlockly is a visual programming editor by Google that uses drag-and-drop blocks. It's the engine that powers the most popular coding education programs world.License

Zig

ProjectDescriptionLicense
zero-nativezero-native is a Zig desktop app shell for modern web frontends. Use the platform WebView when you want the smallest possible app, or bundle Chromium through CEF when rendering consistency matters.License
  • Livecode: Lightweight language with [native GUI], integrated IDE, and visual interface builder.
  • Positron: List of electron apps so I can avoid them, and some alternatives to use instead
  • Awesome Alternatives to Electron Apps: Electron is an application platform which spreads like a cancer in software development world making your immensely powerful computer feel slow and laggy. Sometimes apps made in Electron are useful, though. This list contains good alternatives to an memory hungry eco-unfriendly Electron software.
  • Comparison of Browser Engines: A browser engine (also known as a layout engine or rendering engine) is a core software component of every major web browser. The primary job of a browser engine is to transform HTML documents and other resources of a web page into an interactive visual representation on a user's device. Besides "browser engine", two other related terms are commonly used: "layout engine" and "rendering engine". In theory, layout and rendering (or "painting") could be handled by different engines. In practice, however, these components are tightly coupled and rarely encountered on their own outside of the browser engine.
  • Web To Desktop Framework Comparasion: This repository was made to create an objective comparison of multiple framework that grant us to "transform" our web app to desktop application formats.
  • Awesome-electronjs-hacking: A curated list of awesome resources about Electron.js (in)security
  • Qt: Qt (pronounced "cute") is free and open-source cross-platform software for creating graphical user interfaces as well as cross-platform applications
  • jscherer92/Quark: Create Applications with browser technologies using the native engine in your OS.
  • Xojo: Build Native, Cross-Platform Apps.Rapid application development for Desktop, Web, Mobile & Raspberry Pi.
  • LambdaNative: LambdaNative is freely available under the BSD license, extensively documented, and hosted on GitHub. LambdaNative builds native applications on a wide range of platforms including iOS, Android, Blackberry, OS X, Linux, Windows, OpenBSD, NetBSD, FreeBSD and OpenWrt, from a single source code.
  • REVERY: Fast, native, cross-platform UI.
  • 8th: 8th lets you use your preferred platform to write and test your code. With one click, you generate the executables for any platform 8th supports, from any platform it supports!.
  • CEF: Chromium Embedded Framework (CEF). A simple framework for embedding Chromium-based browsers in other applications.
  • yue/yue: A library for creating native cross-platform GUI apps.
  • Godot: Godot Engine – Multi-platform 2D and 3D game engine.
  • HaxeUI Haxe based cross platform (desktop, mobile, web) UI framework
  • HTA/HTML Application: HTML Application or "HTA" is a Microsoft Windows program whose source code consists of HTML, Dynamic HTML, and one or more scripting languages supported by Internet Explorer, such as VBScript or JScript. The HTML is used to generate the user interface, and the scripting language is used for the program logic. An HTA executes without the constraints of the internet browser security model; in fact, it executes as a "fully trusted" application.

📚 Notes

Consider Progressive Web Apps PWA, if your app doesn't require any platform interactions.

"Progressive Web Apps might not be able to replace every kind of native application, but they can be viable replacements for some apps written with the Electron web wrapper technology". For more info: https://www.androidpolice.com/2020/05/27/google-chats-desktop-application-is-now-a-progressive-web-app/

See this: Blazor, ElectronCGI.

❤ Contributions

awesome-electron-alternatives is open to contributions, but I recommend creating an issue or replying in a comment to let me know what you are working on first that way we don't overwrite each other.

Please read CONTRIBUTING.md for details on this project. If you have any questions, feel free to open an issue. And feel free to improve this list by contributing!

📑 License

  • Inspired by the awesome list.
  • Electron-alternatives is licensed with MIT by sudhakar3697 and contributors.
  • The logo of this project is authored, created or licensed by the Electron-js community (brand, open source project), but has no direct relationship with this repository.

🙌 Contributors

awesome-list
cross-platform-desktop-app-dev
electron
electron-alternatives
pwa

Significant stargazers

Adolfo Jayme-Barrientos

62 followers · starred Mar 2021

James Sumners

414 followers · starred Aug 2023

Menglin Li

44 followers · starred Jun 2025

ELLIOTTCABLE

496 followers · starred Feb 2021