A lightweight, modern desktop application for real-time monitoring and management of Windows services.
Provide a seamless dashboard for developers and system admins to monitor status, track resources (CPU/RAM), and control critical services. Default configuration supports monitoring POS services, but can be adapted for any Windows service.
| Feature | Description |
|---|---|
| ā” Real-time Monitoring | Live status updates (Running, Stopped, Paused) with sub-second latency. |
| š Resource Tracking | Visual graphs for CPU usage (%) and Memory consumption (MB). |
| š® Service Control | Start, Stop, and Restart services directly from the UI. |
| š¦ Smart Installation | Install and update service executables/files with one click. |
| āļø Configurable | Simple YAML configuration for managing multiple services. |
| š System Tray | (Coming Soon) Background operation and status notifications. |
| Real-time Monitoring | Configuration & Settings |
|---|---|
![]() |
![]() |
| Service Installer | OTA Updates |
|---|---|
![]() |
![]() |
Built on the Clean Architecture principle, ensuring separation of concerns and maintainability.
services-update).window-service-watcher/
āāā internal/
ā āāā app/ # App lifecycle & Watcher logic
ā āāā config/ # Config loader (YAML)
ā āāā domain/ # Interfaces & DTOs
ā āāā service/ # Windows SCM implementation
āāā frontend/src/ # Svelte 5 UI Components
āāā main.go # Entry point
āāā wails.json # Wails config
go install github.com/wailsapp/wails/v2/cmd/wails@latestClone & Install Dependencies
git clone https://github.com/zenkiet/window-service-watcher.git
cd window-service-watcher
# Install backend & frontend deps
make deps
cd frontend && pnpm install
Run in Development Mode
wails dev
Build for Production
wails build
# Output: ./build/bin/window-service-watcher.exe
config.yaml)The app auto-generates this file on first run.
services:
- id: "550e8400-e29b-41d4-a716-446655440000" # Unique ID
name: "Payment Gateway Service" # Display Name
serviceName: "PaymentSvc" # Actual Windows Service Name
path: "C:\\Services\\Payment\\app.exe" # Executable Path
installable: true # Allow file updates
| Function | Description |
|---|---|
Startup(ctx) |
Initializes Service Manager connection. |
Start/StopService(id) |
Controls specific service state. |
InstallService(id, files) |
Updates binary files and restarts service. |
GetConfig() |
Returns the current loaded configuration. |
| Event | Payload | Description |
|---|---|---|
services-update |
map[string]Status |
Real-time status stream (1Hz). |
serviceName in config.yaml doesn't match the actual Windows Service name.services.msc for the exact Service Name (not Display Name) and update config.Contributions are welcome! Please open issues or pull requests for bug fixes, features, or improvements.
This project is licensed under the MIT License - see the LICENSE file for details.
Star the repository ā
Share it with your network š¢
Made with ā¤ļø by ZenKiet