web-to-desktop-framework-compariso
quickjs
web-to-desktop-framework-compariso | quickjs | |
---|---|---|
6 | 77 | |
- | 9,549 | |
- | 1.4% | |
- | 9.3 | |
- | 5 days ago | |
C | ||
- | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
web-to-desktop-framework-compariso
-
Show HN: I rewrote my Mac Electron app in Rust (app went from 1GB to 172MB)
https://github.com/Elanis/web-to-desktop-framework-compariso...
Electron comes out looking impressive at runtime!
Memory Usage - (Average of runs) Median of difference between system measured free memory before execution and during execution)
-
Lazarus Release 4.0
> it's still a far cry from your ~200 Mb Electron hello world.
I think that projects that ship packaged web apps but attempt to use the system native web views where available are really nice, like Wails: https://wails.io/ (so for example, on Windows it would use Webview2, so you don't have to package an entire Chromium install yourself)
Here's a comparison of how the distribution sizes change, Wails in particular also has way faster builds than something like Tauri: https://github.com/Elanis/web-to-desktop-framework-compariso...
That said, I wish we got more native software, or even something like LCL that can target Win32, GTK, Qt or whatever else is available. Sure, writing components that are available on a lot of platforms and work similarly everywhere is a pain for the developers, but I applaud the effort regardless, since the above solutions like Wails don't actually do anything for the memory usage and CPU cycles, whereas native GUI software is better for most apps that don't try to be very interactive.
-
Servo in 2024: stats, features and donations
I mean, most OSes already ship with a WebView component that you can use instead of shipping an entire browser runtime.
Wails does that: https://wails.io/
Tauri also does that: https://tauri.app/
That does help with the needed resources quite a bit: https://github.com/Elanis/web-to-desktop-framework-compariso...
Sadly it doesn’t change the memory usage much so the technology is still inherently wasteful, but on a certain level it feels like a lost battle - because web technologies often feel like the choice of least resistance when you want GUI software that will run on a bunch of platforms while not being annoying to develop (from the perspective of your run of the mill dev).
-
Neutralinojs – Build lightweight cross-platform desktop apps with JavaScript
I looked into some alternatives a while back [1] and thought Neutralino looked promising except that it doesn't support node modules. I.e. you cannot use the existing ecosystem of node-stuff.
Still, glad there are many options for using web UI to create desktop apps these days.
[1]: Neutralino themselves link to this nice comparison table: https://github.com/Elanis/web-to-desktop-framework-compariso...
-
Neutralinojs – Cross-platform desktop application development framework
> but it uses your system's existing browser
According to (1) that is incorrect. It uses WebKitGTK+.
(1) https://github.com/Elanis/web-to-desktop-framework-compariso...
quickjs
-
The many, many, many JavaScript runtimes of the last decade
I see a few mentions of QuickJS, but they all refer to the fork of Bellard's QuickJS https://bellard.org/quickjs/, which I think deserves a mention. It seems to be still active (last release 2025-04-26, GitHub mirror at https://github.com/bellard/quickjs shows some activity).
-
SQLite JavaScript: Extend your database with JavaScript
This is a fantastic approach.
BTW, it looks like the js engine is "QuickJS" [0]. (I'm not familiar with it myself.)
I like it because sqlite by itself lacks a host language. (e.g., Oracle's plsql, Postgreses pgplsql, Sqlserver's t-sql, etc). That is: code that runs on compute that is local to your storage.
That's a nice flexible design -- you can choose whatever language you want. But quite typically you have to bring one, and there are various complications to that.
It's quite powerful, BTW, to have the app-level code that acts on the app data live with the data. You can present cohesive app-level abstraction to the client (some examples people will hopefully recognize: applyResetCode(theCode) or authenticateSessionToken(), or whatever), which can be refined/changed without affecting clients. (Of course you still have to full power and flexibility of SQL and relational data for the parts of your app that need it.)
[0] https://bellard.org/quickjs/
-
JSLinux
Considering the extremes of prolific developers gives interesting contrast to dogmas such as "functions/files should never be above x lines", where `quickjs.c` is 50k lines and has functions that are hundreds of lines long:
https://github.com/bellard/quickjs/blob/master/quickjs.c
(Obviously different approaches suites different circumstances.)
- QuickJS JavaScript Engine
-
Servo in 2024: stats, features and donations
And some lightweight alternatives like Bellard's QuickJS (https://bellard.org/quickjs/) in C and Kiesel (https://kiesel.dev/) in Zig.
-
Building Static HTML Pages with JSX Server-Side Rendering
Built on a highly optimized JavaScript runtime powered by QuickJS, Query offers fast startup times and efficient execution. Its built-in caching mechanism further enhances performance by storing function responses, reducing database load and latency. This focus on speed makes Query a standout choice for server-side rendering, especially in applications with many components.
- Lua Is So Underrated
-
Introducing our Next-Generation JavaScript SDK
Where the previous SDK was built on top of the QuickJS JavaScript engine and the Javy runtime, the new SDK is built on top of the Firefox browser’s SpiderMonkey engine, and the Bytecode Alliance’s StarlingMonkey runtime and ComponentizeJS WIT bindings generator.
-
QuickJS: Handle Typescript Sourcemap
I'm currently using Bellard's QuickJS engine on a new TypeScript project.
What are some alternatives?
web-to-desktop-framework-comparison - An objective comparison of multiple frameworks that allow us to "transform" our web apps to desktop applications.
Duktape - Duktape - embeddable Javascript engine with a focus on portability and compact footprint
web-nfc - Web NFC
LuaJIT - Mirror of the LuaJIT git repository
kumo - Wayland Mobile Web Browser
jerryscript - Ultra-lightweight JavaScript engine for the Internet of Things.