A RPC-based client-server system status tools, with Rust + Electron architecture.
- RPC Server, (Using Rust) for read system status.
RPC Client, (Using Rust to Node.js) for communication.- UI Client, (Using Electron) for cross platform UI support.
Node.js
- neon Rust bindings for writing safe and fast native Node.js modules.
RPC
- tarpc is an RPC framework for rust with a focus on ease of use. Defining a service can be done in just a few lines of code, and most of the boilerplate of writing a server is taken care of for you.
- gRPC-rs is a Rust wrapper of gRPC Core. gRPC is a high performance, open source universal RPC framework that puts mobile and HTTP/2 first.
Refs:
- Xi Editor project is an attempt to build a high quality text editor, using modern software engineering techniques.
- Tray Electrorn An example app for building a native-looking Mac OS X tray app with a popover using Electron.
Stats Demo App:
- bottom A cross-platform graphical process/system monitor with a customizable interface and a multitude of features. Supports Linux, macOS, and Windows. Inspired by both gtop and gotop.
- Zenith In terminal graphical metrics for your *nix system written in Rust.
Dev Setup:
- Languages: https://github.com/starship/starship
System
- bandwhich is a CLI utility for displaying current network utilization by process, connection and remote IP/hostname.
- https://github.com/tbillington/kondo - Save disk space by cleaning non-essential files from software projects.
Library:
- heim is an ongoing attempt to create the best tool for system information fetching (ex., CPU, memory, disks or processes stats) in the Rust crates ecosystem.
requests
{"method":"client_started","params":{}}
{"method":"client_started","params":{}}
{"method":"send_memory","params":{}}
{"method":"client_started","params":{}}
{"method":"send_host","params":{}}
{"method":"send_memory","params":{}}
{"method":"send_languages","params":{}}
{"method":"send_sizes","params":{}}
- core-lib, Stadal Core
- gui, Electron UI
- rpc, Stadal Core RPC
- src, Stadal App
- client, deprecated for Rust RPC Client
- stadaljs, deprecated for Rust PRC Client Node.js Binding
- xrl, deprecated for Rust RPC Client
- trace, for Rust RPC Server
RPC based on xi-editor with Apache 2.0 & Inspired by xi-term