Skip to content

About

Position, scale, color, and animate your notification banners globally or per app, on whichever display you want.

Resources

Stars

0 stars

Watchers

0 watching

Forks

 
 

Repository files navigation

NotificationNanny app icon

NotificationNanny - Now on MacOS 27!

Position, scale, tint, and animate notification banners, globally or per app.

Download for macOS · Website · Changelog · Report an issue

Downloads Stars macOS 14+


Dragging the banner in Settings moves the real notification with it, and picking purple tints it


Install

With Homebrew:

brew tap chessper53/notificationnanny https://github.com/chessper53/NotificationNanny
brew install --cask notificationnanny

Then click the bell icon in your menu bar and grant Accessibility permission. If you installed with Homebrew, updates are one click from the settings panel.

Or install manually:

  1. Download the latest zip and open it.
  2. Drag NotificationNanny.app into Applications, then launch it.
  3. Click the bell icon in your menu bar and grant Accessibility permission.

You will need to grant Accessibility permission again after every update. macOS ties that permission to the exact build it was granted to, so a new version arrives as an unrecognised app.

What it does

  • Nine anchor points on any display, with independent settings per screen
  • Scale banners from 50% to 250%, tint the background or text, or replace the system banner with a custom styled one
  • Give specific apps their own rules, using named groups with their own position, display, scale, and tint
  • Choose how banners animate in: system default, slide, bounce, fade, or scale
  • Hold banners until your display wakes up, so nothing disappears while you are away
  • Dismiss banners automatically on a timer from 1 to 300 seconds, or leave them until you are ready
  • Answer from a custom banner: it keeps the app's own buttons, Reply included, with the reply typed right in the banner
  • Experimental: a Notification Center of its own when you click the clock. It looks like the system's, takes your banner colours, and adds size, side, screen and animation choices, arrival times, a filter by app, and optionally the real widgets

Issues and feature requests

I have a full time job, so responses may take a little while, but nothing goes unread. Found a bug or have an idea? Open an issue here.

Privacy

No data is collected, transmitted, or stored outside your device. The Accessibility permission is used solely to observe and control notification windows on your local machine. Screen Recording is only asked for if you turn on widgets in the custom Notification Center, and is only used to show the real widgets there.

How it works

NotificationNanny uses the macOS Accessibility API to observe the notification center process. When a banner appears it repositions or replaces it according to your rules. For scaled, tinted, or custom banners it intercepts the notification, moves the system banner off screen, and shows its own window matching the macOS banner style. The custom Notification Center works the same way: the real panel stays open off screen, NotificationNanny draws its own list from it, and every click and reply goes back to the real one. This relies on private internals, so Apple can change the behavior in any OS update. The app sandbox is disabled because cross process Accessibility access requires it.

For contributors, docs/ARCHITECTURE.md covers the internals.

License

Released under the MIT License.

About

Position, scale, color, and animate your notification banners globally or per app, on whichever display you want.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages