> Aether is a relatively large app with an Electron and Go toolchain, at 100,000+ lines of code. Getting it to compile requires setting up a correct build runtime with the latest versions of Go, Node (for Electron) and C dependencies and development environments. Expect the initial set-up to take a few hours. Be patient!
Is Electron a hard dependency or is there a core lib that can be wrapped by the GUI framework of choice? And several hours of initial setup is pretty scary . Maybe providing a dev docker, snap or flatpak could get devs up and running much faster than that.
Other than that, I love the idea of a decentralized forum. If there are specs I'll have a look at them to see how the intricacies of operating something like is were solved.
We use Electron exclusively for GUI. The real app is a Go binary with a GRPC API. It’s all fully isolated, so if you don’t want to touch any Electron, you don’t have to. Use the API to build a CLI app, for example.
To be more specific, we have two Go binaries that we ship, one is the aether-backend that talks to the network, the other is the aether-frontend that compiles the content coming from the network into a social graph. Both are properly isolated and talk to each other only over declared GRPC APIs. I’ve tried very hard to keep it hackable that way.
There's a fully JavaScript implementation of gRPC[0] that you may be able to use should you implement a web app using Service Workers[1]. This would be installable for browsers in a manner that should provide long-lived access to the network.
Is Electron a hard dependency or is there a core lib that can be wrapped by the GUI framework of choice? And several hours of initial setup is pretty scary . Maybe providing a dev docker, snap or flatpak could get devs up and running much faster than that.
Other than that, I love the idea of a decentralized forum. If there are specs I'll have a look at them to see how the intricacies of operating something like is were solved.