Skip to content

GMT0800/always-on

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

always-on logo

always-on

A lightweight desktop utility that keeps the system awake. Built with C++ using Win32 API and GDI+.

Features

  • One-click toggle via a stopwatch-style UI
  • Moves the mouse 1px right then 1px left every 30 seconds
  • Zero CPU usage when idle (condition-variable-based sleep)
  • System tray support — close to tray, double-click to restore
  • No external dependencies, no data collection, no network access, fully offline

Tech Stack

  • UI: Win32 + GDI+ (native rendering)
  • Mouse simulation: Win32 SendInput

Prerequisites

Build

# Configure & build (x64)
cmake -S . -B build -A x64
cmake --build build --config Release

# For ARM64:
cmake -S . -B build-arm64 -A ARM64
cmake --build build-arm64 --config Release

Output: build/Release/always-on.exe

Package

# Full package (MSIX + portable for both x64 and ARM64)
powershell -ExecutionPolicy Bypass -File build.ps1

# Single architecture
powershell -ExecutionPolicy Bypass -File build.ps1 -Arch x64
powershell -ExecutionPolicy Bypass -File build.ps1 -Arch arm64

# Portable only (skip MSIX)
powershell -ExecutionPolicy Bypass -File build.ps1 -SkipMsix

For MSIX packaging, copy build.config.example.ps1 to build.config.ps1 and fill in your Store identity.

Release artifacts are written to release/.

License

MIT


© 2026 always-on. All rights reserved. The "always-on" name and logo are trademarks of their respective owner.

About

A lightweight desktop utility that keeps the system awake.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors