{"id":19231184,"url":"https://github.com/phodal/stadal","last_synced_at":"2025-04-21T03:31:42.961Z","repository":{"id":150637691,"uuid":"276641619","full_name":"phodal/stadal","owner":"phodal","description":"A RPC-based client-server system status tools, with Rust + Electron architecture.","archived":false,"fork":false,"pushed_at":"2020-11-30T11:46:57.000Z","size":684,"stargazers_count":12,"open_issues_count":0,"forks_count":5,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-01T08:51:29.319Z","etag":null,"topics":["cli","client-server","electron","rpc","rust"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/phodal.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-07-02T12:34:15.000Z","updated_at":"2025-03-28T20:20:40.000Z","dependencies_parsed_at":"2023-05-27T00:00:18.934Z","dependency_job_id":null,"html_url":"https://github.com/phodal/stadal","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/phodal%2Fstadal","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/phodal%2Fstadal/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/phodal%2Fstadal/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/phodal%2Fstadal/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/phodal","download_url":"https://codeload.github.com/phodal/stadal/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249990975,"owners_count":21357180,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli","client-server","electron","rpc","rust"],"created_at":"2024-11-09T15:41:53.468Z","updated_at":"2025-04-21T03:31:42.943Z","avatar_url":"https://github.com/phodal.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Stadal\n\n\u003e A RPC-based client-server system status tools, with Rust + Electron architecture.\n\n![Stadal Screenshots](docs/stadal.png)\n\n## Architecture (design)\n\n - RPC Server, (Using Rust) for read system status.\n - ~~RPC Client, (Using Rust to Node.js) for communication~~.\n - UI Client, (Using Electron) for cross platform UI support.\n\nNode.js\n\n - [neon](https://github.com/neon-bindings/neon) Rust bindings for writing safe and fast native Node.js modules.\n\nRPC\n\n - [tarpc](https://github.com/google/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.\n - [gRPC-rs](https://github.com/tikv/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.\n\nRefs:\n\n - [Xi Editor](https://github.com/xi-editor/xi-editor) project is an attempt to build a high quality text editor, using modern software engineering techniques. \n - [Tray Electrorn](https://github.com/kevinsawicki/tray-example)  An example app for building a native-looking Mac OS X tray app with a popover using Electron.\n\nStats Demo App:\n\n - [bottom](https://github.com/ClementTsang/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.\n - [Zenith](https://github.com/bvaisvil/zenith) In terminal graphical metrics for your *nix system written in Rust.\n\nDev Setup:\n\n - Languages: [https://github.com/starship/starship](https://github.com/starship/starship)\n\nSystem\n\n - [bandwhich](https://github.com/imsnif/bandwhich) is a CLI utility for displaying current network utilization by process, connection and remote IP/hostname.\n - [https://github.com/tbillington/kondo](https://github.com/tbillington/kondo) -  Save disk space by cleaning non-essential files from software projects. \n\n## Documents\n\nLibrary:\n\n - [heim](https://github.com/heim-rs/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.\n\n[Status library comparison](https://github.com/heim-rs/heim/blob/master/COMPARISON.md)\n\n## Notes\n\nrequests\n\n```\n{\"method\":\"client_started\",\"params\":{}}\n```\n\n```\n{\"method\":\"client_started\",\"params\":{}}\n{\"method\":\"send_memory\",\"params\":{}}\n```\n\n```\n{\"method\":\"client_started\",\"params\":{}}\n{\"method\":\"send_host\",\"params\":{}}\n{\"method\":\"send_memory\",\"params\":{}}\n{\"method\":\"send_languages\",\"params\":{}}\n{\"method\":\"send_sizes\",\"params\":{}}\n```\n\n## Development\n\n - core-lib, Stadal Core\n - gui, Electron UI\n - rpc, Stadal Core RPC\n - src, Stadal App\n - client, **deprecated**  for Rust RPC Client\n - stadaljs, **deprecated** for Rust PRC Client Node.js Binding\n - xrl, **deprecated** for Rust RPC Client\n - trace, for Rust RPC Server\n\nLICENSE\n===\n\nRPC based on [xi-editor](https://github.com/xi-editor/xi-editor) with Apache 2.0 \u0026 Inspired by [xi-term](https://github.com/xi-frontend/xi-term)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fphodal%2Fstadal","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fphodal%2Fstadal","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fphodal%2Fstadal/lists"}