Skip to content

Windows OS application that displays hardware metrics in browser-based interface. Leverages Windows API calls using Rust backend.

Notifications You must be signed in to change notification settings

JayIke/Computer-Health-GUI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 

Repository files navigation

Computer Health Monitor (Windows)

A desktop-based monitoring tool that provides real-time system health data, including CPU speed, memory usage, disk space, uptime, and network interface details. Built with Rust for the backend and HTML/Tera for the frontend, this project showcases low-level Windows API integration, system diagnostics, and web templating in a desktop environment. My motivation for this project was to gain familiarity with Windows API, the long term goal is to create a distributable windows application (using Windows UI).


Project Summary

The Computer Health Monitor is a lightweight Windows utility that displays basic hardware and system performance metrics in a browser-based interface.Leverages Windows API calls to deliver accurate system insights without third-party dependencies or bloat.

Key features:

  • System uptime
  • CPU clock speed
  • Memory usage statistics
  • Disk space usage
  • Enumerated network interface list

Tools & Libraries Used

🦀 Rust Crates

  • windows — access to Windows APIs (e.g., GetIfTable, GlobalMemoryStatusEx)
  • actix-web — asynchronous web server framework
  • tera — HTML templating engine (Jinja2-style)
  • serde — data serialization/deserialization
  • serde_json — JSON conversion (if needed for API endpoints)
  • futures — async support for request handling

Frontend

  • HTML-based local webpage (rendered using Tera)

Client–Server Data Flow

Browser (HTML interface) │ ▼ GET request to `/` (root route) │ ▼ Actix-web server (Rust) ├── Gathers system data: │ ├─ CPU speed │ ├─ Memory info │ ├─ Disk info │ └─ Network interfaces via Win32 APIs └── Renders HTML using Tera templates │ ▼ Renders system info in browser UI 

How to build and run application

cd ./windows_monitor cargo build cargo run
# rebuild after changes cargo clean cargo build

About

Windows OS application that displays hardware metrics in browser-based interface. Leverages Windows API calls using Rust backend.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published