mrkeyoor.com_
Sun 04 Oct 07:01 UTC
Dev Toolsevaluationupdated 04 Oct 2026

window-sweaters review

Window Sweaters is a macOS menu-bar app that draws knitted borders around application windows. It offers hand-picked designs for 37 apps, derives colors from other app icons, and lets you exclude apps that should keep ordinary borders.

Verdict

Our Linux run stopped at the platform boundary: the build failed in 8 seconds and the tests failed in 7 because the required macOS runtime and frameworks were unavailable. On a personal Mac, Window Sweaters is a charming, unusually configurable visual extra with an honest uninstall path. Skip it on managed machines or if private window APIs, Accessibility access, and a non-notarized release are unacceptable.

We ran it

Lab card: what happened when we ran window-sweatersScreenshot of window-sweaters (github.com/saragordic/window-sweaters)
Install✓ · 7s
Build✗ · 8s
Tests✗ · 7sran, no count parsed
Repo109 files~7,138 lines of source · 29 MB · 0 CI workflows · tests dir

Answers from our run

Does window-sweaters build from source?

Dependencies installed in 7 seconds, and the build failed. We cloned commit a49dff5 into a clean Debian container with 3 CPUs and no project-specific setup.

Do window-sweaters's tests pass?

The test command failed in our container, and its output did not report a pass or fail count.

Who should not use window-sweaters?

Windows or Linux users: the app links macOS frameworks and targets macOS 13 or later.

What are the alternatives to window-sweaters?

JankyBorders, yabai, Rectangle. Our Linux run stopped at the platform boundary: the build failed in 8 seconds and the tests failed in 7 because the required macOS runtime and frameworks were unavailable.

Setup3/5Easy prebuilt path, but notarization and Accessibility add friction
Docs5/5Install, removal, customization, limits, and source build are clear
Community3/5737 stars with 6 open issues and 4 open PRs
Maturity3/5v1.5.0 ships, but private APIs and compatibility gaps remain

Who it’s for

Mac users who want playful window decoration and do not mind granting Accessibility access.
Desktop customizers who want per-app colors, several knit patterns, and editable PNG charts.
C and Objective-C developers comfortable testing private macOS window APIs after system updates.
Users willing to approve a non-notarized app through macOS Privacy & Security.

Who it’s NOT for

Windows or Linux users: the app links macOS frameworks and targets macOS 13 or later.
Managed Macs that forbid non-notarized software or Accessibility permissions: the current release needs both exceptions.
Anyone who needs stable behavior across OS updates: the README says it uses private macOS window APIs.
Intel or older-macOS users who require hands-on compatibility evidence: the author tested Apple Silicon on macOS 26 and says the other targets have not had equivalent testing.
AeroSpace users bothered by stale borders across workspaces: open issue 19 reports that exact behavior.

Setup reality

Our Debian sandbox installed the available prerequisites in 7 seconds, but commit a49dff5 did not build. The build exited 2 after 8 seconds because -fobjc-arc was unsupported by the available legacy runtime; macOS architecture and deployment flags were also ignored.

The test command exited 2 after 7 seconds. Its compiler could not find CoreGraphics/CoreGraphics.h or ApplicationServices/ApplicationServices.h, so the macOS-specific test binary was not produced.

The supported route is macOS 13 or later with Apple's Command Line Tools and Python 3. Prebuilt installs use Homebrew or the v1.5.0 ZIP, but the app is not notarized and needs Accessibility access to follow focused windows.

Thirty-seven apps get borders that look knitted, not generated

Window Sweaters puts a yarn icon in the macOS menu bar and wraps application windows in rendered knit patterns. Its collection has 37 hand-designed app treatments, including Finder, Safari, Slack, VS Code, Figma, Spotify, and several AI clients. Other applications are not left out: the app samples their icons locally, softens the colors, and assigns a stable pattern. Personal rules in apps.conf take priority.

This is a tiny visual indulgence, and the specificity makes it work. You can choose By App or a shared Zigzag style, change border width and stitch size, pause everything, or disable individual apps. Your choices survive restarts. Custom PNG charts can replace built-in patterns. None of that improves window management, but it does turn a generic border utility into something recognizably its own.

Version 1.5.0 is easy to install but not notarized

The supported paths are a Homebrew cask or the v1.5.0 ZIP from GitHub Releases. The universal app targets macOS 13 or later on Apple Silicon and Intel. macOS will block its first launch because the release is not notarized, so the user must choose Open Anyway under Privacy & Security. Tracking the focused window can also require Accessibility permission.

Those exceptions decide whether the app belongs on your Mac. A personal machine makes them understandable tradeoffs for a GPL-3.0 hobby app. A managed company Mac may forbid either one. The source build uses ad-hoc signing, and the contributing guide says Developer ID signing and notarization are not configured for distribution. There is no hidden path around the policy question.

What happened when we ran it

Our sandbox installed the available prerequisites in 7 seconds at commit a49dff5. The build then failed with exit code 2 after 8 seconds. Clang ignored the arm64, x86_64, and macOS 13 deployment flags, then reported that -fobjc-arc was unsupported on a platform using the legacy runtime. The log did not reach a finished application bundle.

The test step also exited 2, after 7 seconds. Compilation stopped because CoreGraphics/CoreGraphics.h and ApplicationServices/ApplicationServices.h were missing, with 3 error summary lines in the supplied log. The project is tied to macOS frameworks, so this fresh Debian container could not validate it. The repository has 109 files, about 7,138 lines of source, and occupied 29 MB when checked out.

Our scan found a tests directory but 0 CI workflow files and no Dockerfile. A container would not replace the Apple frameworks or WindowServer behavior anyway. The useful test environment is a Mac, followed by manual checks for focus changes, resize behavior, overlapping windows, and movement between displays. The contributing guide specifically warns that a successful transaction does not prove pixels appeared.

Private window APIs make every macOS update relevant

Window Sweaters builds on JankyBorders and links Apple's private SkyLight framework. That access lets it track and draw around windows in ways public APIs do not readily provide. It also means an OS update can change behavior without notice. The README says the author tested on Apple Silicon with macOS 26; older macOS releases and Intel hardware have not received the same hands-on coverage.

Current reports show concrete edge cases. Issue 19 says borders remain visible when switching AeroSpace workspaces. Issue 15 reports overlap with the menu bar on maximized windows, while issue 16 discusses pointer behavior around the border. These are not generic complaints about polish. They sit exactly where a decorative overlay meets window geometry and another window manager.

The settings are local and reversible

User colorways and charts live under ~/Library/Application Support/Knit Borders, preserving the app's earlier name for compatibility. The startup hook can run ~/.config/window-sweaters/sweatersrc or ~/.sweatersrc if present, an option command-line users should remember when auditing behavior. App matching ignores capitalization and prefers the longest name prefix.

Removal is documented well. Homebrew's --zap option deletes saved colorways, while omitting it keeps them. Manual removal means deleting the app plus optional support and preference files, then revoking Accessibility permission separately. That last step matters because macOS keeps privacy grants after an application bundle disappears.

A September 21 push and v1.5.0 show active iteration

GitHub records 737 stars and 10 combined open issues and pull requests. The API entries split that total into 6 issues and 4 pull requests. Version 1.5.0 shipped on September 18, 2026, adding per-app enablement, icon-derived colors, an updated Zigzag, and an 8-point border. The last push followed on September 21.

The project is active enough to try, and its limitations are plainly written. Choose it for the knitted artwork and per-app control, not because it is the safest way to draw a focused-window border. If the privacy prompts or private APIs bother you, JankyBorders offers the plainer foundation. If they do not, keep the uninstaller instructions and test again after the next macOS update.

Alternatives

ProjectWhat it isPick it when
JankyBordersThe focused-window border utility on which Window Sweaters is built.pick this instead when you want configurable plain borders without knitted art or a menu of app designs.
yabaiA tiling window manager for controlling macOS spaces and window placement.pick this instead when window layout and automation matter more than decoration.
Rectangle gh↗A macOS window-placement app centered on keyboard shortcuts and snapping.pick this instead when you need an ordinary signed productivity utility rather than custom borders.

What people are saying

  1. [velocity-scout] saragordic/window-sweaters

Sources

  1. Window Sweaters README
  2. Window Sweaters v1.5.0 release
  3. Window Sweaters contributing guide
  4. AeroSpace workspace border issue

More dev tools reviews

github-stars-history · BrokenPipe · FGOAC-scooby · plexo · qingjian · airlift · the whole board →