Live data from Hacker News

Building a Slack/Discord alternative with Tauri/Rust

linen.dev

31–40 of 253 posts

Re: Building a Slack/Discord alternative with Tauri/Rust

#31

Just out of curiosity, is the server-side self-hostable? I want to just try it out.

The code is here: https://github.com/linen-dev/linen.dev It is actually kind of tricky to self host since there are quite a few services that needs set up and we could use quite a bit of work in our documentation.

Re: Building a Slack/Discord alternative with Tauri/Rust

#33
post #20

> One of the main core differences with Tauri is that it uses a Webview instead of using chromium like in Electron. This means that every desktop application doesn’t have to ship with chromium and can rely on the native browser’s webviews. The downside here is that because it is using Webview you have to deal with different quirks of different operating systems. ElectronJS is a cross-platform framework. It is bloated…

> why not going for a JVM-based technology? Not to pick on the JVM, but does anyone actually build new desktop software for the JVM that's meant to be downloaded and installed by mainstream consumers? Qt and other frameworks work pretty well (with their own flaws) but I'd simply never even consider the JVM as a viable option for desktop software. The last JVM app I installed was probably Minecraft in 2012.

exception to the rule, and should be popular on this site: IntelliJ IDEA (and derivatives) are JVM based.

Re: Building a Slack/Discord alternative with Tauri/Rust

#34
post #10

> Building a slack alternative I've always thought slack was the alternative, to IRC.

Isn't "alternative" commutative?

Commutative means that changing the order of the operands yields the same result. Ex: a+b = b+a. In that way, "alternative" is (mostly) commutative, but there are exceptions: Amazon is an alternative to a local bookstore, but a local bookstore is not necessary an alternative to Amazon.

The transitive property implies that if a=b and b=c, then a=c. "Alternatives" are also (mostly) transitive. A counterexample would be that Slack is an alternative to IRC, and IRC is an alternative to Slack, but Slack is not an alternative to Slack!

Re: Building a Slack/Discord alternative with Tauri/Rust

#36
post #20

> One of the main core differences with Tauri is that it uses a Webview instead of using chromium like in Electron. This means that every desktop application doesn’t have to ship with chromium and can rely on the native browser’s webviews. The downside here is that because it is using Webview you have to deal with different quirks of different operating systems. ElectronJS is a cross-platform framework. It is bloated…

> why not going for a JVM-based technology? That's cross-platform, and it doesn't require a web browser / webview to show text. Because then you require the user to install a JVM?

You've been able to package your java apps so to not require that from your users for a very long time, and in the more recent years, with the compartmentalization of the JDK, you've been able to ship a very striped down version of it, and even more recently, an AOT compiled/PGO optimized binary, so nowadays you can ship your instant starting/low footprint/well performing java code without Java/a JVM.

Re: Building a Slack/Discord alternative with Tauri/Rust

#37
post #20

> One of the main core differences with Tauri is that it uses a Webview instead of using chromium like in Electron. This means that every desktop application doesn’t have to ship with chromium and can rely on the native browser’s webviews. The downside here is that because it is using Webview you have to deal with different quirks of different operating systems. ElectronJS is a cross-platform framework. It is bloated…

> why not going for a JVM-based technology? Not to pick on the JVM, but does anyone actually build new desktop software for the JVM that's meant to be downloaded and installed by mainstream consumers? Qt and other frameworks work pretty well (with their own flaws) but I'd simply never even consider the JVM as a viable option for desktop software. The last JVM app I installed was probably Minecraft in 2012.

I use IntelliJ, which is a Java + Swing app I think.

Re: Building a Slack/Discord alternative with Tauri/Rust

#38
post #20

> One of the main core differences with Tauri is that it uses a Webview instead of using chromium like in Electron. This means that every desktop application doesn’t have to ship with chromium and can rely on the native browser’s webviews. The downside here is that because it is using Webview you have to deal with different quirks of different operating systems. ElectronJS is a cross-platform framework. It is bloated…

> why not going for a JVM-based technology? Not to pick on the JVM, but does anyone actually build new desktop software for the JVM that's meant to be downloaded and installed by mainstream consumers? Qt and other frameworks work pretty well (with their own flaws) but I'd simply never even consider the JVM as a viable option for desktop software. The last JVM app I installed was probably Minecraft in 2012.

LibreOffice is still built on Java, that's probably the main consumer app that still is. Of course, there are developer tools like the Jetbrains IDEs still running on the JVM, but those aren't for mainstream consumers.

Nowadays it can be hard to tell if something uses Java, since it's recommended to just bundle a JRE with your app so a user doesn't have to know/care about Java.

Re: Building a Slack/Discord alternative with Tauri/Rust

#39

Earlier quoted context omitted.

Isn't "alternative" commutative?

Commutative means that changing the order of the operands yields the same result. Ex: a+b = b+a. In that way, "alternative" is (mostly) commutative, but there are exceptions: Amazon is an alternative to a local bookstore, but a local bookstore is not necessary an alternative to Amazon. The transitive property implies that if a=b and b=c, then a=c. "Alternatives" are also (mostly) transitive. A counterexample would be…

Amazon is also not necessarily an alternative to a local bookstore

Re: Building a Slack/Discord alternative with Tauri/Rust

#40

Earlier quoted context omitted.

> why not going for a JVM-based technology? Not to pick on the JVM, but does anyone actually build new desktop software for the JVM that's meant to be downloaded and installed by mainstream consumers? Qt and other frameworks work pretty well (with their own flaws) but I'd simply never even consider the JVM as a viable option for desktop software. The last JVM app I installed was probably Minecraft in 2012.

LibreOffice is still built on Java, that's probably the main consumer app that still is. Of course, there are developer tools like the Jetbrains IDEs still running on the JVM, but those aren't for mainstream consumers. Nowadays it can be hard to tell if something uses Java, since it's recommended to just bundle a JRE with your app so a user doesn't have to know/care about Java.

LibreOffice has very little Java code. https://www.reddit.com/r/libreoffice/comments/6gxy82/is_libr...
Post reply on HN