Professional C# .NET developer, React and TypeScript hobbyist, proud Linux user, Godot enthusiast!

https://blog.fabioiotti.com
https://github.com/bruce965

  • 1 Post
  • 63 Comments
Joined 3 years ago
cake
Cake day: March 9th, 2022

help-circle


  • I am not sure… in the case I’m referring to, they were lagging also when scrolling. But it was React, so native browser rendering. And they were actually very large tables, so we had to do some funny things like viewport culling (see react-window).

    For what it’s worth I’ve never had any similar performance issues with tables in Flutter (web with the canvas-based render engine, not Android) when applying the same culling technique, they just ran fine at any resolution. Different hardware, though, so it’s not an apple to apple comparison.

    In any case just to be safe I would personally assume less pixels = less work = less power = more battery life. My opinion is very unscientific though.




  • Good separation between business logic and UI without effort, cross-platform UI in any language, possibility to turn it into a web-accessible service in the future, great choice of UI frameworks and battle-tested components if you decide to go for a web framework and language.

    As an example of a successful software that followed this approach: Synchthing. All versions run a local web service in the background. The Desktop version just opens a browser on the index page. The Android version is a native app that calls the exposed REST API on localhost, bypassing the web UI.

    As an example of a much more complex software, albeit not FOSS: EasyEDA. It’s a web software, but it also comes as a desktop app (which I never tried) which I assume is not much more than a frame for the web view.

    My recommendation: write the UI with React on Vite in TypeScript, and write the business logic in your general purpose language of choice (mine would usually be C#).






  • I thought so. Although almost nothing for modern standards, 60MB is not exactly tiny. Sorry about that.

    On a different note, a repository is always a good thing imho. If you’d rather not have to worry about the dependency-pull step you can always include the dependencies with your sources, or just limit your code to using features included in the standard library.


  • bruce965@lemmy.mltoLinux@lemmy.mlRecommend me a scripting language
    link
    fedilink
    arrow-up
    5
    arrow-down
    1
    ·
    edit-2
    1 month ago

    JavaScript through Node.js, or TypeScript through Deno if you like typed languages. They both check all your boxes (just check the size of the executables to make sure that it’s what you would consider “small footprint”).

    Both languages and runtimes are quite popular, so you will find any answers on StackOverflow.

    They are both single-executable with little dependencies, and Deno can also compile your scripts to self-contained executables.

    As a bonus, both support the vast and extensive NPM package repository where you can find all sort of libraries for even the most complex tasks.

    And they work with your favourite IDE or editor, not just syntax highlighting, but also contextual suggestions.