Skip to content

azu/notchbar

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

39 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NotchBar

A macOS menu bar app that displays notifications in the notch area. Send text from the CLI and it pops up around the notch.

Idle Expanded
Idle Expanded
Markdown Link Preview
Markdown Link Preview

Requirements

  • macOS 13+
  • MacBook with notch (works on non-notch Macs too, displayed at top center of screen)

Install

Download from GitHub Releases

curl -L -o /tmp/NotchBar.tar.gz https://github.com/azu/notchbar/releases/latest/download/NotchBar.tar.gz
tar xzf /tmp/NotchBar.tar.gz -C /Applications
xattr -rc /Applications/NotchBar.app

The CLI is bundled at NotchBar.app/Contents/MacOS/notchbar-cli. To add it to your PATH:

ln -s /Applications/NotchBar.app/Contents/MacOS/notchbar-cli /usr/local/bin/notchbar-cli

Build from source

git clone https://github.com/azu/notchbar.git
cd notchbar
swift build -c release
# Produces .build/release/NotchBar and .build/release/notchbar-cli

Usage

GUI App

Launch NotchBar.app and a bell icon appears in the menu bar. Accessibility permission is required on first launch (for hotkey monitoring).

CLI

# Send text
notchbar-cli send "Hello"

# With color, expand for 3 seconds
notchbar-cli send "Build OK" --color "#00FF00" --expand 3

# Send from stdin
echo "Deploy done" | notchbar-cli send

# Markdown link (opens .md file preview)
notchbar-cli send "[README](/path/to/README.md)"

# Deduplicate by ID
notchbar-cli send "Status: running" --id "job-1"

Hotkey

Press F18 to toggle the notch panel. Designed for use with Karabiner-Elements remapping CapsLock to F18.

Configurable via the NOTCHBAR_HOTKEY environment variable (specify a CGKeyCode integer). Examples: 79 (F18, default), 80 (F19), 96 (F5), 97 (F6).

To find a key code, use Key Codes app, Karabiner-EventViewer, or refer to the CGKeyCode reference.

Protocol

The CLI and GUI communicate over a Unix domain socket ($TMPDIR/notchbar.sock) using JSON messages (newline-delimited). If the socket connection fails, the CLI automatically falls back to Distributed Notification.

License

MIT

About

No description, website, or topics provided.

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages