Skip to content

Free, open-source macOS app that locks applications with Touch ID, Apple Watch, and trusted Wi-Fi. The only open-source app locker for macOS.

License

Notifications You must be signed in to change notification settings

dutkiewiczmaciej/MakLock

MakLock icon

MakLock

Lock any macOS app with Touch ID, Apple Watch, or password.
Free, open source, and more powerful than paid alternatives.

Platform Swift License Stars Release


What is MakLock?

MakLock is a lightweight menu bar app that protects your macOS applications with Touch ID, Apple Watch proximity, or a backup password. When someone tries to open or switch to a protected app, MakLock blocks access with a blur overlay and requires authentication.

Unlike App Store alternatives, MakLock is distributed directly — giving it full overlay and process management capabilities that sandboxed apps simply cannot offer.

Why MakLock?

Feature MakLock AppLocker ($17.99) Cisdem AppCrypt ($19.99/yr)
Price Free forever 1 app free, paid for more Trial only
Open source Yes No No
Touch ID Yes Paid only No
Lock on app switch Yes No (launch only) Yes (direct version)
Apple Watch unlock Yes (wrist detection) No No
Full-screen overlay Yes (blur, all monitors) Yes (solid, single monitor) Dialog box
No content flash Yes (NSPanel) No (brief flash on launch) N/A
Auto-close apps Yes No (sandbox) Yes (direct version)
Close apps on sleep Yes No No
Auto-lock on idle Yes No Yes
Auto-lock on sleep Yes No No
Panic key Yes No No
Multi-monitor Yes Unknown No
Bypass resistant Yes No (Bundle ID edit) Unknown
Can't be deleted without auth N/A No (sandbox) Yes (direct version)

AppLocker (App Store) is sandboxed — it can only intercept app launches, not activations. If an app is already running, switching back shows content without authentication. Its overlay can also freeze the entire Mac, requiring a hard reboot. MakLock uses a non-activating NSPanel overlay that never steals focus, preventing these issues.

Features

  • Lock apps with Touch ID (single prompt)
  • Password fallback for Macs without Touch ID
  • Apple Watch proximity unlock with wrist detection
  • Full-screen blur overlay on all monitors
  • Auto-lock after idle timeout (configurable)
  • Auto-lock on sleep/wake
  • Auto-close inactive apps (prevents notification snooping)
  • Close protected apps on sleep (privacy on shared laptops)
  • Menu bar app (no Dock icon, runs silently)
  • Panic key emergency exit (Cmd+Opt+Shift+Ctrl+U)
  • System app blacklist (Terminal, Xcode, etc. can never be locked)
  • Multi-monitor support
  • First launch onboarding
  • Settings with tabbed UI
  • Automatic updates via Sparkle 2
  • Trusted Wi-Fi auto-unlock (coming in v1.1)
  • Per-window overlay (coming in v1.2)

Screenshots

Lock overlay
Full-screen blur overlay with Touch ID unlock

Settings window
Settings with protected apps management

Menu bar
Menu bar with quick toggle and status

Installation

Download

Download MakLock 1.0.0 — open the DMG and drag to Applications.

Signed with Developer ID and notarized by Apple. No Gatekeeper warnings — just download and run.

Homebrew

brew tap dutkiewiczmaciej/tap
brew install --cask maklock

Build from Source

git clone https://github.com/dutkiewiczmaciej/MakLock.git
cd MakLock
open MakLock.xcodeproj

Build and run with Cmd+R. Requires Xcode 15+ and macOS 13+.

How It Works

  1. App Monitor — watches for protected app launches and activations via NSWorkspace
  2. Lock Overlay — instantly shows a full-screen blur overlay on all displays
  3. Authentication — prompts Touch ID, checks Apple Watch proximity, or asks for password
  4. Re-lock on quit — Cmd+Q clears authentication, so the next launch requires re-auth (even for apps that stay alive in background like Messages)
  5. Auto-lock — re-locks on idle timeout, sleep, or when Apple Watch leaves range
  6. Auto-close — optionally terminates inactive protected apps to prevent notification snooping

Architecture

MakLock is a native Swift/SwiftUI application distributed outside the App Store for full system access.

MakLock/
  App/        Entry point, AppDelegate
  Core/       Services (AppMonitor, Auth, Watch, Overlay, Idle, Sleep, Inactivity)
  UI/         Design system, Components, Settings, Lock Overlay
  Models/     Data models (ProtectedApp, AppSettings, LockSession)
  Resources/  Assets, Info.plist, Entitlements

Key frameworks: SwiftUI, AppKit, LocalAuthentication, CoreBluetooth, IOKit, ServiceManagement, HotKey (SPM), Sparkle 2 (SPM)

Safety

MakLock includes multiple safety mechanisms to ensure you never get locked out:

  • Panic keyCmd+Option+Shift+Control+U instantly dismisses all overlays
  • System blacklist — Terminal, Xcode, Activity Monitor, and other critical apps can never be locked
  • Timeout failsafe — overlays auto-dismiss after 60 seconds without interaction
  • Dev mode — DEBUG builds include a Skip button and 10-second auto-dismiss

Requirements

  • macOS 13.0 (Ventura) or later
  • Apple Silicon or Intel Mac
  • Touch ID recommended (password fallback available)
  • Apple Watch with watchOS 9+ for proximity unlock (optional)

Contributing

Contributions are welcome! See CONTRIBUTING.md for guidelines.

If you find MakLock useful, consider giving it a star on GitHub — it helps others discover the project.

License

MIT — Made by MakMak