ipfs-desktop icon indicating copy to clipboard operation
ipfs-desktop copied to clipboard

Switch from Electron to Tauri

Open RubenKelevra opened this issue 2 years ago • 2 comments

Tauri 1.0 was released a couple of days ago, and I was wondering if you guys have heard of it or looked at it.

It allows to create small, high performance desktop apps by leveraging the default os-renderer instead of bundling a whole Chrome/Chromium browser in the web application.

It's not a drop-in replacement for Electron, but I think there are a lot of benefits for a switch. Especially if you look at the roadmap and see that the web applications will be able to build for Android and iOS in the near feature. Compilation to wasm is also planned as well as direct go binding.

https://tauri.app/

RubenKelevra avatar Jun 21 '22 19:06 RubenKelevra

I have looked into using Tauri with ipfs-desktop and created a starter app for it, but we haven't looked into this much further: https://github.com/SgtPooki/ipfs-desktop-tauri

SgtPooki avatar Jun 27 '22 17:06 SgtPooki

@SgtPooki what is your conclusion so far? Would that be viable?

Somehow Google wasn't able to find this repo, thanks for the work so far on this topic :)

RubenKelevra avatar Jun 27 '22 17:06 RubenKelevra

@RubenKelevra I personally think ~~tauri~~ wails would be a great option to explore more. It was fairly easy to set up, and the ~~tauri~~ wails maintainers were very quick to respond on the one issue I opened. I would love to get some help there, though it would be a side/bonus project for sure, as I can't necessarily prioritize that.

~~https://github.com/SgtPooki/ipfs-desktop-tauri~~ https://github.com/SgtPooki/ipfs-desktop-wails currently doesn't communicate with webui yet, so a lot of functionality is broken, but the app loads and it's ready for further development and debugging.

SgtPooki avatar Sep 27 '22 16:09 SgtPooki

@RubenKelevra I just sent you an invite to be a collaborator on https://github.com/SgtPooki/ipfs-desktop-tauri & https://github.com/SgtPooki/ipfs-desktop-wails so you can feel free to hack on those with me

SgtPooki avatar Sep 27 '22 16:09 SgtPooki

Thanks, appreciated!

RubenKelevra avatar Sep 27 '22 16:09 RubenKelevra

ugh. i'm so sorry, I misremembered. I had put more work into https://github.com/SgtPooki/ipfs-desktop-wails, and that's the one I was talking about in my comment above. going to edit that comment.

SgtPooki avatar Sep 27 '22 16:09 SgtPooki

Ah okay 😂

Have some personal life things to finish before I can work on side project again :)

So don't expect me to join in the next week or so :)

RubenKelevra avatar Sep 27 '22 16:09 RubenKelevra

Not a problem. No rush at all, I probably won't be able to spend much more time on it for a while either. To answer your question again, this time with full remembrance: I think we should prioritize ipfs-desktop on wails. With wails (in go) we get the benefit of a kubo-desktop, where kubo is booted up by the desktop app itself, programmatically, rather than as a separate daemon with a need for an RPC client. Just booting up ipfs-desktop-wails is crazy fast, and I imagine it being much more lightweight than what ipfs-desktop currently is.

For ipfs-desktop-tauri (iroh-desktop) we get the benefit of running the rust implementation of ipfs in memory.. etc..

The problem I see with both of those, is that those teams (kubo & iroh) don't have dedicated front-end/GUI devs to help, and we aren't experts in rust/go. However, I believe it would be a much better DX with a much more performant UX.

SgtPooki avatar Sep 27 '22 17:09 SgtPooki

Closing this in favor of the older https://github.com/ipfs/ipfs-desktop/issues/867

SgtPooki avatar Jul 03 '23 22:07 SgtPooki