5 ms·
I'm happy for competition in this space, specially because Deno can run true TypeScript directly and not just strip types like the current Node implementation.
by bel8 4mo ago
I'm happy for competition in this space, specially because Deno can run true TypeScript directly and not just strip types like the current Node implementation.
With that said, this is going to eat a lot of Tauri market. Why would I use Tauri now? The 150mb of additional bundle size is just an extra 1 to 10 seconds of download time in most internet connections and you get a reliable rendering engine.
- swiftcoder 4mo ago> and you get a reliable rendering engine How is it more reliable than Tauri - aren't they both using the system webview?
- fiatpandas 4mo agoDeno desktop can use system web view OR embed CEF. Tauri is just system web view.
- aabhay 4mo agoThe benefit of Deno Desktop is it's like Tauri except for when you want it to be Electron???
- GeneralMaximus 4mo agoThis is a feature many apps actually need. E.g. Tauri uses WebKitGTK on Linux, which has historically been slow, unstable, and frequently lagging behind the main WebKit project. This is enough of an issue that even Tauri is working on the ability to use CEF instead of the system web view in Tauri apps. Things are generally fine on recent versions of Windows and macOS. The system web views on these platforms will be evergreen versions of WebKit or Blink. But if you want to support very old versions of Windows or macOS, you might choose to use CEF instead of wrestling with Safari-from-five-years-ago.
- bel8 4mo agoDeno Desktop can bundle CEF (Chromium Embedded Framework) according to https://docs.deno.com/runtime/desktop/comparison https://docs.deno.com/runtime/desktop/comparison
- jpace121 4mo ago> Why would I use Tauri now? You’re “backend” isn’t JavaScript.
- deleted 4mo ago[deleted]
- flohofwoe 4mo agoDeno also just strips the type annotations when running TS code - at least by default. To get type checking you'll need to run via `deno run --check`, or use the separate `deno check` subcommand. No big deal since type checking and linting usually happens automatically in the IDE during development.
- bel8 4mo agoGood to know. Does it also preclude features like enums?
- bartlomieju 4mo agoBartek from the Deno here. Nope, we do support enums OOTB.
- Timon3 4mo agoHuh, I was going to mention Node's `--experimental-transform-types`, but that was completely removed in v26: https://github.com/nodejs/node/pull/61803 https://github.com/nodejs/node/pull/61803
- deleted 4mo ago[deleted]
- bel8 4mo agoWow, this is sad to hear. So if I understood correctly, node is walking back from trying to run TypeScript? Pretty sad if so. I hope it's a temporary step back to leap forward, in the future.
- Timon3 4mo agoOnly for non-erasable Typescript! The support for running erasable TS is here to stay. It's not ideal, but on the other hand this is paving the way for the TC39 proposal - if that ever progresses...
- aabhay 4mo agoTauri doesn't lock you in to one JS ecosystem. In fact, it doesn't require you to use javascript at all. Also, we've had several developer framework startups get acquired -- Astro, Nuxt, UV, Bun, Vite. It doesn't exactly inspire confidence in a software that you want to last and give support for years.
- thephyber 4mo agoI don’t understand this logic. The acquisition doesn’t guarantee the project dies and staying unacquired doesn’t guarantee the project continues. The state of OSS funding is precarious. The acquisitions at least guarantee some runway for the maintainers. Maybe the acquirer has alternative intentions than to simply bankroll the project’s the way it was, but at least someone is paying to keep the maintainers fed. After having worked in the JavaScript ecosystem for over a decade, I don’t think _any_ project of significant size is guaranteed to last or have support. We need to be thinking about resilience (_when_ the framework stops being supported), not pretending like using OSS projects without paying them should magically give you some support contract/assurances.
- SpaghettiX 4mo agoBut that would be the same argument for using electron? Why use this and not electron?
- liamgm 4mo agothe option to use system webview , electron don't provided that
- farco12 4mo agoIf you want desktop and mobile builds. Tauri 2.0 added support for iOS and Android builds as targets.
- jemmyw 4mo ago> Deno can run true TypeScript directly and not just strip types What exactly do you mean by that? Because no js engine carries the ts types into the runtime as far as I know. Deno and nodejs both use v8 as the runtime. v8's internal types are not connected at all to the ts types regardless of the wrapper. The only difference might be when/if static type checking is performed.
- steve_adams_86 4mo agoI think they mean deno handles transpiling for you so there’s no visible machinery for this aspect of the program. It’s just convenient.
- jemmyw 4mo agoI assumed they meant more than that because nodejs does the same since v22.18 and prior would do it with a flag. But they mentioned type stripping, which is really all transpiling of ts does for most code.
- callc 4mo agoTemporarily at a place with 10-15 mbps. 150 MB is around 1 minute. I grew up on 30 mbps. >= 100 is all I need nowadays. But 10 mbps and websites and downloads really start to take a while. The more bits and bytes you save, the more people will be pleased with your stuff! Even if they don’t know what bits and bytes are, and just go based on impatience
- znort_ 4mo ago>I'm happy for competition in this space, specially because Deno can run true TypeScript directly and not just strip types like the current Node implementation. this is misleading. there is no "running true ts". you will always be running pure js (until someone actually develops a "true" ts engine), and deno does "type stripping" just the same. the only difference is that it bundles the tools and makes it transparent and config-free which is more convenient (although more rigid).
- icholy 4mo ago[dead]
- pier25 4mo agoThere’s no running TS. Everyone executes JS. Also TS itself is going towards stripped types. There’s this proposal which might land on browsers some day: https://tc39.es/proposal-type-annotations/ https://tc39.es/proposal-type-annotations/ And in preparation you can use this setting on your tsconfig: https://www.typescriptlang.org/tsconfig/#erasableSyntaxOnly https://www.typescriptlang.org/tsconfig/#erasableSyntaxOnly
- seanclayton 4mo ago> Why would I use Tauri now? The same set of reasons anyone made desktop apps before Deno desktop launched. Deno desktop is not the reason desktop apps are made. If someone really wanted a desktop app made before, deno desktop isn't going to suddenly make new ones start appearing. It will just be a new choice among the many.