Caution
Windurs is written and reviewed by AI. There will be bugs. I am not a "real developer," meaning I have limited interest/ability in coding outside of using an agent. I encourage everyone to review the code in its entirety before putting it on their machine and be fully informed of the risks associated with using Windurs. Anyone can contribute to Windurs by way of PRs and Issues, but I may not address every issue or merge every PR unless I have an understanding of what it does and why. While I have made every reasonable effort to mitigate risks, there are still risks, and it is your responsibility to understand them.
A tiny macOS menu-bar app that brings Windows-style Dock behavior to macOS: click the Dock icon of the app you're already in, and its foremost window minimizes into the Dock.
Unlike "hide" (which sweeps away all of an app's windows), Windurs performs a genuine minimize of just the foremost window — the app stays active and its other windows are untouched. Clicking the icon again restores the window the normal macOS way; Windurs stays out of that.
Download the latest Windurs-x.y.z.pkg from Releases and double-click
it to run the installer. It's signed and notarized by Apple, so it opens with no
Gatekeeper warning — and macOS offers to move the installer to the Trash when finished.
On first launch, grant Accessibility: System Settings ▸ Privacy & Security ▸ Accessibility ▸ enable Windurs (so it can read the Dock and minimize windows). Windurs runs in the menu bar — it has no Dock icon.
Requirements: macOS 14 or later — but Windurs has only been developed and tested on macOS 26 (Tahoe). Behavior on any earlier macOS version is completely unverified.
A CGEventTap observes the click before the Dock acts on it, so it reads the foremost
window's true pre-click state:
- Foremost window visible → minimize it.
- Foremost window minimized → do nothing; let the Dock restore it.
The whole app is a single file — Sources/main.swift. Please read it
before installing (see the caution above).
Requires the Xcode Command Line Tools (swiftc, codesign).
./build.sh # compile + assemble Windurs.app (universal; ad-hoc signed)
./package-pkg.sh # build the .pkg installerOutput goes to ~/.windurs/build by default (override with WINDURS_BUILD_DIR). Released
builds are additionally Developer-ID signed and notarized — the relevant environment
variables are documented at the top of build.sh and package-pkg.sh. CI lives in
.github/workflows.
Click the menu-bar icon:
- Enabled — master on/off.
- Launch at Login.
- Check for Updates… / Check for Updates Automatically — checks the latest GitHub Release; toggle off to disable.
- Quit Windurs.
Windurs is free software, licensed under the GNU General Public License v3.0 (GPL-3.0) — see LICENSE. It comes with absolutely no warranty.
Contributions are welcome via Issues and Pull Requests, though — per the caution above — not every issue or PR will necessarily be addressed or merged.