2025-08-08 01:06:43 -07:00
# socktop
2025-08-08 01:03:35 -07:00
2026-08-23 17:48:53 -07:00
_ socktop _ is a remote system monitor with a rich TUI, talking to an ultra lightweight agent over WebSockets.
2025-08-08 01:03:35 -07:00
2026-08-23 20:47:41 -07:00
<img src="./docs/socktop_demo_1_60.apng" width="100%">
2025-08-08 01:03:35 -07:00
2026-08-23 17:37:02 -07:00
## Resources
2025-11-30 10:21:26 -08:00
2026-08-23 17:37:02 -07:00
| Resource | Location |
| -------- | -------- |
| Website and online demo (yes it's real) | [socktop.io ](https://www.socktop.io ) |
| Quick Start guide | [https://socktop.io/assets/docs/installation/quick-start.html ](https://socktop.io/assets/docs/installation/quick-start.html ) |
| Prereqs | [https://socktop.io/assets/docs/installation/prerequisites.html ](https://socktop.io/assets/docs/installation/prerequisites.html ) |
| APT Install | [https://socktop.io/assets/docs/installation/apt.html ](https://socktop.io/assets/docs/installation/apt.html ) |
| Cargo Install | [https://socktop.io/assets/docs/installation/cargo.html ](https://socktop.io/assets/docs/installation/cargo.html )
2026-08-23 17:48:53 -07:00
| Usage | [https://socktop.io/assets/docs/usage/general.html ](https://socktop.io/assets/docs/usage/general.html )
| Auth Setup | [https://socktop.io/assets/docs/security/token.html ](https://socktop.io/assets/docs/security/token.html ) |
| TLS Setup | [https://socktop.io/assets/docs/security/tls.html ](https://socktop.io/assets/docs/security/tls.html ) |
2026-08-23 18:24:57 -07:00
| Monitoring Multiple Hosts | [tmux ](https://socktop.io/assets/docs/advanced/tmux.html ) / [zellij ](https://socktop.io/assets/docs/advanced/zellij.html ) |
2025-08-08 13:00:36 -07:00
---
2026-08-23 18:24:57 -07:00
## Platform Support
2025-08-08 01:06:43 -07:00
2026-08-23 18:24:57 -07:00
Linux (all flavors), ARM/Raspberry Pi (32b/64b), MacOS, Windows, RISC-V (experimental)
2025-08-12 15:52:46 -07:00
2025-08-08 01:06:43 -07:00
---
2026-08-23 18:24:57 -07:00
## Contributing
2025-08-16 01:23:20 -07:00
2026-08-23 18:32:37 -07:00
Contributions are welcome and you have the freedom to use whatever development tools you would like, as long as there is a human in the loop and all the clippy and unit tests pass you are good to submit a PR. Defects / Bugs just go ahead and fix and file a PR. New features, please create a issue in advance and let me know you are offering to build it. I don't want to be in a position where you worked for a couple of weeks on something and I don't want to merge it.
2025-08-16 01:23:20 -07:00
2026-08-23 18:24:57 -07:00
### Development
2025-08-12 15:52:46 -07:00
2025-08-08 01:03:35 -07:00
``` bash
2025-08-08 01:06:43 -07:00
cargo fmt
2025-08-12 15:52:46 -07:00
cargo clippy --all-targets --all-features
cargo run -p socktop -- ws://127.0.0.1:3000/ws
2025-08-16 01:23:20 -07:00
# TLS (dev): first run will create certs under ~/.config/socktop_agent/tls/
cargo run -p socktop_agent -- --enableSSL --port 8443
2025-08-08 01:03:35 -07:00
```
2025-08-22 11:10:11 -07:00
### Auto-format on commit
A sample pre-commit hook that runs `cargo fmt --all` is provided in `.githooks/pre-commit` .
Enable it (one-time):
2025-08-08 01:06:43 -07:00
---
## License
2025-08-12 15:52:46 -07:00
2026-08-23 18:32:37 -07:00
MIT — see [LICENSE ](LICENSE ).
2025-08-08 01:06:43 -07:00
## Acknowledgements
2025-08-12 15:52:46 -07:00
- ratatui for the TUI
- sysinfo for system metrics
- tokio-tungstenite for WebSockets