Testing scope: The coverage badge reflects
WeakupCoreunit and integration tests. XCUITest source files are present, but UI tests are not currently executed by the Swift Package Manager CI workflow.
A high-performance, lightweight macOS utility to prevent your Mac from sleeping.
- One-Toggle Control - Enable/disable sleep prevention with a single click
- Turn Off Display - Switch off the display immediately while keeping your Mac and background tasks running
- Menu Bar App - Lives in menu bar, no dock clutter
- Timer Mode - Set auto-shutdown timer (15min, 30min, 1hr, 2hrs, 3hrs, or custom duration up to 24 hours)
- Countdown in Menu Bar - Optional timer countdown next to the status icon
- Visual Status - Clear filled/empty icon indicator with multiple icon styles
- Keyboard Shortcut -
Cmd + Ctrl + 0to toggle anywhere - Hotkey Conflict Detection - Warns about common shortcut conflicts and suggests alternatives
- Native Integration - Uses macOS IOPMAssertion APIs to prevent idle and display sleep
- Dark/Light Theme - Supports system theme, light mode, and dark mode
- Sound Feedback - Optional audio feedback when toggling
- Icon Customization - Choose from Power, Bolt, Coffee, Moon, or Eye icons
- Multi-Language Support - 8 languages with real-time switching
- Launch at Login - Optional startup at login with error handling
- Timer Expiry Notifications - Optional notification when the timer ends
- Onboarding - First-launch walkthrough
- SwiftUI + AppKit - Modern, clean codebase
| Language | Display Name |
|---|---|
| English | English |
| Chinese (Simplified) | 简体中文 |
| Chinese (Traditional) | 繁體中文 |
| Japanese | 日本語 |
| Korean | 한국어 |
| French | Français |
| German | Deutsch |
| Spanish | Español |
Building locally is currently the only supported installation method. To build the latest stable version:
# Clone the current stable tag
git clone --branch v1.1.0 --depth 1 https://github.com/Zzzode/weakup.git
cd weakup
# Build the app
./build.sh
# Run
open Weakup.appGitHub Releases include a versioned Weakup-x.y.z-source.tar.gz archive built from the exact release commit.
The DMG and ZIP attached to v1.0.2 are legacy unsigned artifacts and are not supported for installation. Weakup has no Developer ID signature or Apple notarization, so those downloads may fail Gatekeeper and signature validation. Weakup is also not available from the official Homebrew Cask repository.
- macOS 13 or later
- Xcode toolchain and Swift 6.2.3 or later (
.swift-versionrecords the minimum)
- Click the menu bar icon to toggle sleep prevention
- Right-click and choose "Turn Off Display" to keep your Mac running with the display off
- Right-click or select "Settings" to access options
- Use
Cmd + Ctrl + 0keyboard shortcut to toggle from anywhere - Switch language instantly in the settings panel
- Timer Mode - Enable automatic shutdown after a set duration
- Duration - Choose from preset times or set a custom duration (up to 24 hours)
- Theme - System, Light, or Dark
- Sound Feedback - Toggle audio feedback on/off
- Notifications - Toggle timer expiry notifications
- Menu Bar Countdown - Show remaining timer next to the icon
- Icon Style - Choose your preferred menu bar icon
- Language - Switch between 8 supported languages
- Launch at Login - Start Weakup when you sign in
- Hotkey - Customize shortcut and resolve conflicts
| Shortcut | Action |
|---|---|
Cmd + Ctrl + 0 |
Toggle sleep prevention |
- Schedule-based activation (time-of-day rules)
- Menu bar widget for quick stats
- Shortcuts app integration
The current stable release is v1.1.0. See CHANGELOG.md for shipped changes.
- Architecture - System architecture overview
- Development - Setup and development workflow
- Testing - Testing guidelines
- Translations - Guide for adding new languages
- Code Signing - Code signing and notarization guide
- Homebrew - Homebrew installation guide
- Privacy - Privacy policy
Contributions are welcome! Please see CONTRIBUTING.md for details.
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.
- Built with Swift
- UI framework: SwiftUI
- Sleep prevention: IOPMAssertion