• Otter@lemmy.ca
    link
    fedilink
    English
    arrow-up
    25
    arrow-down
    2
    ·
    10 months ago

    Isn’t this about performance and not storage?

    Making and managing an electron app is easier, but it is possible (with more work) to have clean install/uninstall, a nice UI, and consistent regular updates while still being fast and efficient.

    Better programs will always need more work to create.

    I am curious about what other options there are, and why Electron is what a lot of people go with.

    • masterspace@lemmy.ca
      link
      fedilink
      English
      arrow-up
      20
      arrow-down
      1
      ·
      edit-2
      10 months ago

      Options:

      Native app for each platform:

      • Pros: native code is going to be the fastest possible to run and have the smallest dependencies
      • Cons: have to write all your code 3+ times in different languages, have less time to develop new features and optimize existing code.

      Progressive Web App:

      • Pros: single app, write once runs anywhere, no signing keys, no lock in, can be hosted anywhere, runs on everything
      • Cons: artificially limited by Apple on iOS, doesn’t have access to deep operating system resources, only what’s exposed through the browser, limited multithreading capabilities

      React Native:

      • Pros: single app, write once, runs anywhere, similar enough to React Web that a lot of developers will have an easy time learning it
      • Cons: still kinda finnicky, not super easy to make it work and perform well across all platforms, you’ll probably still end up having to write some native code, not actually CSS / React Web so still a bit of a learning curve coming from there

      Qt:

      • Pros: single app, write once, runs anywhere, low level / compiled means that it will be small and performant
      • Cons: written in C++, harder to find developers for, harder to implement modern out of the box niceties that CSS gives you for free, poor devX compared to react

      .NET MAUI (formerly Xamarin):

      • Pros: single app, write once, runs anywhere, low level / compiled enough to be more performant than most web apps out of the box, well documented
      • Cons: written in C#, easier to find devs for but not many experts in it specifically, MVVM model is not as pleasant of a devX as React, again no css

      Electron:

      • Pros: single app, write once, runs anywhere, has full access to operating system resources and deep multithreading if needed, can be as simple as web app in a container or as complex as something like VSCode.
      • Cons: takes up more storage and ram since you’re bundling chromium with your app
      • aksdb@feddit.de
        link
        fedilink
        arrow-up
        5
        ·
        10 months ago

        Flutter is quite nice too. Closer to web dev, but still pretty close to native.

      • TehPers@beehaw.org
        link
        fedilink
        English
        arrow-up
        3
        ·
        10 months ago

        Tauri is also a more recent option, which uses the native webview. Not sure if it’s suitable for production yet though.