Elanis / web-to-desktop-framework-comparison

An objective comparison of multiple frameworks that allow us to "transform" our web apps to desktop applications.
MIT License
1.27k stars 42 forks source link

Start Duration for Windows doesn't match with my pc #558

Open ahqsoftwares opened 10 months ago

ahqsoftwares commented 10 months ago

Hello, As I have noticed under the start duration, the run time of tauri is higher than electron as stated there. However it is quite the opposite in my pc. My PC Specs:

The app I've used to measure is PassMark App Timer

This is the part with which I am unsatisfied https://github.com/Elanis/web-to-desktop-framework-comparison?tab=readme-ov-file#start-duration

ahqsoftwares commented 10 months ago

image

Config of PassMark App Timer

Elanis commented 10 months ago

Hello, thanks for this issue !

What does this app use to measure start duration ?

Because I use the load event of the inner webview as the end of measurement, and the binary start as the start measurement.

ahqsoftwares commented 10 months ago

Window Initial loading time

ahqsoftwares commented 10 months ago

Although the webview too loads 2x earlier in Tauri compared to Electron

vildantursic commented 10 months ago

I also have vastly different experience build my app on Tauri and Electron. Tauri build time is 10x faster then on Electron. I am using monorepo (turborepo) sharing code between Electron and Tauri, and for same React app that I have Tauri ends up building much faster. I am currently on Windows PC, but soon I'll check MacOS too.

Glad that this comparison exists, really helped me during testing period to know which one to pick :) Huge thanx for all the work!

Elanis commented 10 months ago

This is really interesting to see these comments !

I need a bit of investigation to see if there's some mistake somewhere, but results were respecting my own initial manual tests if I recall correctly (but I might have missed something, who knows ?). About the build time, do you consider that I don't use the advantage of incremental build when building Tauri, which automatically increase a lot build time. Might be worth adding to #142

Also, for some people that might read this, note that since I am using Github Actions for benchmarks, we have to compare relative differences more than absolute values like I said in the README. Not that any of you did it, but I prefer to remind 😄

But still, this is interesting to see huge differences like that. Maybe we need to change some process or ways to benchmark everything !

Glad that this comparison exists, really helped me during testing period to know which one to pick :) Huge thanx for all the work!

Thanks ! That was my initial goal, I just wanted to compare Tauri, nw.js and electron and chose what to pick up for my projects. I didn't expect this project to continue over time, or gain stars, and even less to get to 880 😅 I'm glad it helps other people to make choices :)

ahqsoftwares commented 10 months ago

Tauri apps have a 1st time huge time killing scheme. Also, depending on the pc specs it differs a lot I agreed

ahqsoftwares commented 10 months ago

Also, another thing to note is that you technically have web builds for electron and tauri (considering you don't use the tauri apis on web build) you may add a sidenote regarding that

Elanis commented 10 months ago

Also, another thing to note is that you technically have web builds for electron and tauri (considering you don't use the tauri apis on web build) you may add a sidenote regarding that

This is true. But we believe I should make react (for example) examples as well, so we can see differences between vanilla js, framework versions (like a react todo-list for example), and native calls versions (for example a simple file explorer).

Lots of ideas, but since I don't have that much time to spend on that project, I can't promise I could do it immediately. I created #559 to track this.

ahqsoftwares commented 10 months ago

Yeah, sure

Off Topic I actually came to here from Tauri Apps. In #off-topic it was posted where I saw that which I quickly created an issue

vildantursic commented 10 months ago

Within next few weeks I'll also have Github actions setup and ready so that will also give me more info on performance (build time). Thing is that PC I am using is pretty old (8-9 years) :D I don't think that I'll beat Github actions, but time will tell. I'll post results somewhere here.

I agree with you that examples that use React, Svelte or Vue would give more insights in performance.

ahqsoftwares commented 10 months ago

My pc is of 2012 specs too :) and it can easily beat GitHub Actions

ahqsoftwares commented 10 months ago

Also, the neuralinojs architecture does lack security and can be easily intercepted unlike tauri