A tiny, beautiful macOS notch companion that turns mouse moments into quick bursts of curiosity.
NotchSpark is a native macOS menu-bar app for MacBooks with a notch. Glide your cursor near the notch and a compact animated bubble appears with a short, fun, offline fact. It is minimal, fast, private, and designed to make your Mac feel a little more alive.
- 🎯 Notch-native: the popup is anchored around the MacBook notch instead of floating randomly.
- 🧠 Tiny knowledge sparks: quick facts that are short enough to enjoy without breaking focus.
- 🎨 Adaptive contrast: the popup chooses a high-contrast light or dark treatment from what is behind it when macOS allows sampling, then falls back to a safe readable style without surprise permission prompts.
- 🔒 Privacy-first: facts are bundled offline; no accounts, no analytics, no network calls.
- ⚡ Lightweight: built with Swift, AppKit, and SwiftUI.
- 🪄 Delightfully minimal: menu-bar only, no Dock clutter.
- Download
NotchSpark.zipfrom the latest release. - Unzip it.
- Move
NotchSpark.appto yourApplicationsfolder. - Open it and look for the sparkle icon in your menu bar.
If macOS says the app is from an unidentified developer, right-click NotchSpark.app, choose Open, then confirm. A signed and notarized release is on the roadmap.
git clone https://github.com/IbraheemGanayim/NotchSpark.git
cd NotchSpark
Scripts/install_app.shThat builds NotchSpark, installs it to ~/Applications/NotchSpark.app, and launches it.
git clone https://github.com/IbraheemGanayim/NotchSpark.git
cd NotchSpark
Scripts/build_app.sh
open .build/NotchSpark.appswift run NotchSparkRunning from source is useful for development. The app hides its Dock icon, but the Launch at Login menu item works best from an installed app bundle.
- Launch NotchSpark.
- Look for the sparkle icon in your macOS menu bar.
- Move your cursor close to the notch or top-center of the screen.
- Enjoy a small fact, then keep flowing.
From the menu-bar icon you can:
- Toggle NotchSpark on or off.
- Show a fact immediately.
- Enable Launch at Login.
- Quit the app.
NotchSpark is intentionally quiet:
- No network requests.
- No analytics.
- No tracking.
- No Accessibility permission.
- No Input Monitoring permission.
For adaptive contrast, NotchSpark uses macOS screen sampling only if access is already available. If it is not available, the app falls back to a high-contrast dark popup and keeps going.
swift test
swift buildThe test suite covers notch geometry, multi-display positioning, fact rotation, trigger cooldown, and contrast style selection.
- macOS 13 or newer
- Xcode command line tools or Xcode
- Swift 5.9+
Got an idea that would make NotchSpark more delightful? Open an issue or send a PR. Good additions could be:
- More curated fact packs
- User-selectable fact themes
- Tiny sound or haptic-style animation options
- A signed release build
- Homebrew Cask support
- More languages
Made with care by Ibraheem Ganayim.
- 🌐 Website: ibraheemganayim.com
- 🐙 GitHub: @IbraheemGanayim
- 📬 Email: ganayim.ibraheem@gmail.com
If NotchSpark makes your Mac feel a little more fun, a ⭐ on GitHub helps more people discover it.