Read this in other languages: English, Portuguese
A cross-platform system resource monitor written in Rust that provides real-time information about CPU, memory, GPU, and network in an interactive terminal interface. This is a learning project as I'm exploring Rust, so while fully functional, the code might not follow all best practices.
- ๐ Real-time visualization with TUI (Terminal User Interface) graphs
- ๐ฅ๏ธ Detailed CPU monitoring with multicore support
- ๐ฎ NVIDIA, AMD, and Intel GPU support
- ๐พ RAM and SWAP memory monitoring
- ๐ Network statistics per interface
- ๐ฏ Interactive and responsive interface
- โ๏ธ Customizable and persistent settings
- ๐ป Support for Windows, Linux, and macOS
You can download the pre-compiled binaries for your operating system from the Releases page. Available for:
- Windows (x64)
- Linux (x64)
- macOS (Intel x64 and Apple Silicon)
./install.sh- Make sure you have Rust and Cargo installed
- Clone the repository
- Run one of the build scripts according to your operating system:
Linux:
./build-linux.shmacOS:
./build-mac.shmonitor [OPTIONS]--no-gpu: Disable GPU monitoring--no-network: Disable network monitoring--interval <MS>: Set update interval in milliseconds (default: 50)--history <N>: Set number of data points in graphs (default: 100)--save-config: Save current settings as default--reset-config: Reset settings to default
q: Quit programCtrl+C: Quit program
- Operating System: Windows, Linux, or macOS
- GPU (optional):
- NVIDIA: NVIDIA drivers and NVML
- AMD: AMD drivers
- Intel: Intel drivers
The configuration file is stored in:
- Linux:
~/.config/system-monitor/config.toml - macOS:
~/Library/Application Support/system-monitor/config.toml - Windows:
%APPDATA%\system-monitor\config.toml
tui: Terminal user interfacecrossterm: Cross-platform terminal manipulationsysinfo: System informationnvml-wrapper: NVIDIA GPU supportclap: Command line argument processing
- Fork the project
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Rust Community
- tui-rs contributors
- Developers of used libraries