A lightweight, cross-platform system resource monitoring application built with Go and Fyne UI toolkit.
- Real-time monitoring of system resources:
- CPU usage
- Memory (RAM) usage
- Disk usage and read/write speeds
- Network upload/download speeds
- Responsive UI that adapts to window size
- Light and dark theme support
- Cross-platform compatibility (macOS, Linux, Windows)
- Historical data visualization with simple graphs
- Go 1.23.3 or later
Clone the repository and build the application:
git clone https://github.com/source-c/go-dummy-monitor.git
cd go-dummy-monitor
make build
The built executable will be available in the build
directory.
Simply run the executable to launch the application:
./build/go-dummy-monitor
- Toggle between light and dark themes using the "Toggle Theme" button
- The UI automatically adapts to the window size
- Monitor CPU, RAM, disk, and network usage in real-time
main.go
: Entry point and main application logicconstants/
: Application-wide constants and color definitionsui/
: UI components, widgets, and monitoring systemwidgets/
: Custom widgets for displaying system metrics
utils/
: Utility functions for collecting system information
The project includes a comprehensive Makefile for common development tasks:
make help # Show available make commands
make build # Build for current platform
make build-all # Build for all supported platforms
make test # Run all tests
make clean # Clean build artifacts
make lint # Run linter
make fmt # Format code
make debug # Run with debugger
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add some amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.