[HN Gopher] Sciter - Multiplatform HTML/CSS/JavaScript UI Engine...
       ___________________________________________________________________
        
       Sciter - Multiplatform HTML/CSS/JavaScript UI Engine for
       Applications
        
       Author : thunderbong
       Score  : 167 points
       Date   : 2022-06-16 13:02 UTC (9 hours ago)
        
 (HTM) web link (sciter.com)
 (TXT) w3m dump (sciter.com)
        
       | e1g wrote:
       | Note, Sciter does not embed a browser engine but _reimplements_
       | the DOM /CSS/JS (via QuickJS) logic in C++ which means many
       | familiar web patterns will work, many will not, and many might
       | behave differently. Unlike Electron, Sciter will not be the best
       | option to wrap an existing web app and expect it to work as a
       | desktop app.
       | 
       | Partial compatibility tables are at
       | https://sciter.com/developers/for-web-programmers/
        
         | wener wrote:
         | Sciter is like React Native with extra Web like feature and a
         | more flex "jsx".
        
         | [deleted]
        
         | Waterluvian wrote:
         | Honest question: how is "reimplements in C++" different from
         | implementing their own browser engine?
         | 
         | Is it purely the absence of a JS virtual machine and instead
         | compiles JS code directly to C++ and into native code?
        
           | The_Colonel wrote:
           | It does have a JavaScript VM, just slower (QuickJS as
           | compared to electron's V8).
        
             | EGreg wrote:
             | So what's "Quick" about it? Would having a slower JS engine
             | be outweighed by some other savings? Honestly, the biggest
             | one is memory... Electron is the biggest memory hog I've
             | ever seen, ONE application slows my 16GB macbook to a crawl
             | and it starts swapping to HD. How to stop that?
        
               | The_Colonel wrote:
               | If it's ONE application why do you jump to the conclusion
               | it has to be electron's as opposed to the actual
               | application's fault?
               | 
               | Electron has some baseline overhead (~100 MB RAM IIRC),
               | but otherwise it's not difficult to write well behaving
               | applications with it.
        
               | cyber_kinetist wrote:
               | It's "Quick" in the sense that it's a bytecode
               | interpreter instead of a heavyweight JIT, so much faster
               | startup times (although overall compute performance is
               | much slower). And the library is much smaller than more
               | heavyweight engines like V8, so good for reducing overall
               | app size.
               | 
               | Recently Facebook had to implement a whole new non-JIT
               | Javascript engine just for the purpose of optimizing
               | startup times for React Native apps
               | (https://github.com/facebook/hermes). If you consider how
               | even Facebook had to ditch the V8 JIT for their purpose
               | it's totally understandable why Sciter chose QuickJS as
               | their new Javascript engine.
        
           | e1g wrote:
           | Yes, and the difference is the maturity of the engine. For
           | example, to execute JS files Sciter uses QuickJS which runs
           | ~20-30x slower than V8 JIT [1] and has no support for Intl
           | [2]. Sciter's spin on HTML/CSS is also different [3], which
           | might even be _better_ than the standard DOM /CSS, but
           | _different_ means you 're coding specifically against the
           | internals of this packaging/distribution method.
           | 
           | [1] https://bellard.org/quickjs/bench.html
           | 
           | [2] https://test262.report/?engines=v8%2Cqjs
           | 
           | [3] https://sciter.com/tutorial-learn-sciters-html-
           | components-in...
        
             | tannhaeuser wrote:
             | > _Sciter 's spin on HTML/CSS is also different [3]_
             | 
             | Hmm, that was new to me and quite disappointing TBH. I
             | thought the entire point of an embeddable web rendering
             | component is to leverage existing "standards"/practices,
             | especially CSS' out-of-this-world complexity. Why would
             | anyone in normal mental health condition embrace HTML and
             | CSS for coding apps if the result can't even be used in
             | browsers?
             | 
             | I had counted Sciter towards browser implementations; but
             | now I see it does nothing to prevent our fall into a second
             | medieval age once no-one understands the job-security
             | machine that is CSS. What an utter piece of garbage CSS is,
             | counter to the entire point of using markup.
        
       | wener wrote:
       | sciter is good if you are looking for make an app based biz which
       | not depends too much on web spec.
       | 
       | BTW, sciter only allowed dynamic linking for free use, the binary
       | is close sourced. https://sciter.com/prices/
       | 
       | cross comment https://news.ycombinator.com/item?id=31764929
        
         | marcosdumay wrote:
         | The SDK and the webview links on gitlab have a BSD3 license.
         | 
         | I think that very confusing prices page isn't saying what you
         | think it is (when I read it, I thought it too).
        
       | elwebmaster wrote:
       | What's really useful in most of the desktop UI frameworks is not
       | so much the declarative design language but the "designer" type
       | tools which come with them for .Net, QT, etc. Is there a similar
       | tool which comes with a set of common components that you can use
       | to layout the design and then just change the CSS/HTML for more
       | advanced styling requirements?
        
       | account-5 wrote:
       | I've been keeping an eye on the for a while. I like the sound of
       | it a lot. I still have no idea how to use it though, from what I
       | can tell I would need to learn c++, write a program in that and
       | embed sciter in it for the UI component.
       | 
       | More than happy to be corrected if I'm wrong.
       | 
       | I'm seriously considering spending the time to learn Dart as this
       | seems to be a true cross platform language (desktop, mobile,
       | web). I don't really fancy electron like wrappers. Again more
       | than happy to be put right if I'm wrong.
        
       | afavour wrote:
       | Guess we're doing a "web UI on the desktop" morning on HN, huh?
       | 
       | Sciter has always been near the top of my list of tech I want to
       | play around with. Last I saw the creator was working to get a JS
       | runtime attached to it which might finally be the thing to
       | motivate me to try it out.
        
       | amendegree wrote:
        
       | marcodiego wrote:
       | In the 90's there was a small app called "InfoCourier" which was
       | an "HTML Compiler" which allowed you to create a local website in
       | HTML and then turn it into a windows exe file.
        
         | wener wrote:
         | Nowadays, it's called react-native, you get HTML like compiler
         | to a windows/macos exe.
        
           | _gabe_ wrote:
           | It looks like windows is supported, but I couldn't find
           | anything non-experimental for MacOS. Is MacOS still
           | officially supported by react native?
           | 
           | Edit: I just found this https://github.com/microsoft/react-
           | native-macos . So Microsoft is officially supporting react
           | native on macos? That's pretty ironic haha.
        
       | wodenokoto wrote:
       | Tauri, Sciter and Wails, three electron alternatives are now on
       | spot 1,2 and 3 on hacker news.
       | 
       | If you need ideas for your tech blog, let me recommend doing a
       | post comparing the 3 :)
        
         | capableweb wrote:
         | The only one missing now is Electron and we'll have a real
         | battle :)
        
           | aaaaaaaaata wrote:
           | Besides shipping vulns, what category is Electron beating the
           | rest in? Genuinely curious.
        
             | Kiro wrote:
             | See the sibling thread:
             | https://news.ycombinator.com/item?id=31765784
        
             | capableweb wrote:
             | I'm in no way a fan of Electron and much rather use Tauri.
             | But if you want something proven, wildly deployed and with
             | the biggest community/potential support, then probably
             | Electron is the best currently, just because of how old it
             | is.
        
               | aaaaaaaaata wrote:
               | People say this about using Apache as a webserver; I
               | understand it, but don't know if I agree with it.
        
               | ihateolives wrote:
               | I'm running Apache for all my services and it's totally
               | fine. It does everything I need and since I'm not running
               | Fortune 500 websites or anything performance is more than
               | enough. If it works, I don't need with it.
        
               | capableweb wrote:
               | I'm not particularly risk-averse myself either, so I
               | don't agree with it either. But I do know some are, so
               | those seems to be the arguments in favor of Electron from
               | that perspective.
        
               | redavni wrote:
               | Just a personal anecdote, I work in an industry that is
               | extremely risk averse. I still use 300 baud modems every
               | day. Apache is new-fangled nonsense.
        
               | marcosdumay wrote:
               | On the other hand, this isn't some web page you
               | distribute everywhere an hope it's compatible. Those
               | engines are self-contained, so if your application works,
               | it works.
        
               | yuchi wrote:
               | That's correct for Sciter, but Tauri uses the OS' browser
               | engine, so you're back to the hostile environment /
               | unknown territory of the web.
        
             | wener wrote:
             | Electron is irreplaceable if
             | 
             | - you want to cut the dev cost on support all platform -
             | maybe MOST important
             | 
             | - you want Browser like feature - embed webview not iframe
             | 
             | - you want to make sure the feature is there, if you can
             | not polyfill
             | 
             | Memory is cheap, download size is cheap.
        
       ___________________________________________________________________
       (page generated 2022-06-16 23:02 UTC)