Idea: Gephi app in Tauri
Hey, I like that the Gephi team experiments a lot with new technologies to make dealing with networks even better. The web-based Sigma.js approach in Gephi Lite looks very promising.
Just wanted to raise awareness to Tauri that I found about recently. It's used to create cross-platform applications. Similar to Electron, the frontend is written in HTML/CSS/JS, but unlike Electron, Tauri does not bundle the whole chromium engine and instead relies on the lower-level webview libraries of the operating systems, e.g. it leverages Microsoft Edge WebView2 under the hood on Windows.
Just as an idea, one could imagine a very performant Rust backend that leverages GPU and all CPU cores on modern machines to render algorithms like Yifan-Hu, Louvain and the like. And the results would be communicated to the frontend where a frontend visualization engine like Sigma.js can show the positions of the nodes in a graph. This would allow to combine the best of both worlds: the browser for it's very mature frontend rendering and the whole range of already existing frontend frameworks/libraries, and on the other side Rust to fully leverage the power of the user's machine.
With such an approach, one could even tackle really huge graphs. With fully-connected graphs of more than 100,000 nodes, Gephi just becomes unusable for me, while my system would (in theory) allow for much more performance if multi-threadding and GPU were used. While for these graphs, also frontend JS visualizations that use WebGL can no longer render them, the Rust backend could still finish running a network algorithm in the background. Then let the user filter the graph afterwards (e.g. only show the strongest edges), such that we can extract meaningful information, even though we don't see the whole graph at once rendered.
Just some figments, still wanted to share this idea with you. Of course, this would not be a trivial task and could be a whole new open-source project with sub-tasks being to fully parallelize all the networking algorithms on CPU as well as GPU (e.g. CUDA) and to use Sigma.js in the frontend. Keep up the good work 😊