Our great sponsors
-
Besides a browser based GUI you have many other options like egui, Iced etc. In this case you can still use HTTP for communication between your programs, but also sockets, and, if the programs run on the same machine, named pipes and shared memory (which is more efficient for sharing big data chunks).
-
If you're not using shared memory you need to serialize your Rust data with Serde with a suitable format. If you use a browser GUI you probably want to use the JSON format, but otherwise you can choose a more efficient format like MessagePack.
-
SonarLint
Clean code begins in your IDE with SonarLint. Up your coding game and discover issues early. SonarLint is a free plugin that helps you find & fix bugs and security issues from the moment you start writing code. Install from your favorite IDE marketplace today.
-
Besides a browser based GUI you have many other options like egui, Iced etc. In this case you can still use HTTP for communication between your programs, but also sockets, and, if the programs run on the same machine, named pipes and shared memory (which is more efficient for sharing big data chunks).
-
First I would decide if the GUI application should run in the browser or not. If you have a very complex UI, that's probably the best idea and in that case you want to use HTTP for communication between the programs. You can then either write your GUI code in JavaScript (or a language that compiles to JavaScript) or in Rust which you compile to WASM. In either case you can pick and choose any JS framework you like. The other program should be a HTTP server built using Actix, Axum etc.