README.md
June 28, 2026 ยท View on GitHub
DynamicNotch
Turn the MacBook notch into a living native surface.
DynamicNotch is a native macOS app for notched MacBooks that turns the notch into a live system surface for media, downloads, AirDrop, timers, screen recording, connectivity events, lock-screen transitions, and custom hardware HUDs.
๐ง Why DynamicNotch
The app is built with SwiftUI and AppKit, so the notch window, settings UI, and event handling feel like part of macOS rather than a web-style overlay.
The difference between this project and others is that it is built on its own engine, and not taken from other ready-made repositories. It completely copies the logic, animations, and behavior of a real Dynamic Island on an iPhone, unlike other projects.
The main goal is to make the project as native as possible, both in terms of design and interaction.
๐ฏ Highlights
-
Live Activities: Now Playing (media control, album artwork, audio visualizer, customizable progress bar tint style), Downloads progress, AirDrop, Timer, Screen Recording indicator, Focus mode, Personal Hotspot, and Lock Screen media/live activity surfaces.
-
Temporary Alerts: Interactive HUD status for battery charging, low/full battery, Bluetooth connections, Wi-Fi, VPN, Focus-off toggling, and notch size modification settings feedback.
-
Gestures & Swipe Controls: Native interactive gestures including mouse drag, trackpad swipes, vertical swipe-to-dismiss/restore with adaptive corner radii and swipe-aware blur, and horizontal trackpad/mouse scroll-to-dismiss.
-
Fluid Physics Animations: True-to-life replication of the iOS Dynamic Island's motion design, featuring responsive physics-based spring animations, jelly-like morphing transitions, and synchronized content interpolation that matches the stretch, squash, and elastic behavior of Apple's implementation.
-
Dynamic Island (Floating Capsule): Automatic support for devices without a physical hardware notch (e.g. non-notched MacBooks, iMac, Mac mini, or external monitors). Transitions to a floating capsule shape (
DynamicIslandShape) whentopInset == 0, utilizing dynamic, smooth corner radius transitions. -
Deep Customization: Personalization options for base notch width/height, stroke options, background styling, animation presets, custom screen/display selection, and fullscreen spaces handling.
๐ฆ Installation
- Download the latest DMG from the Releases page.
- Drag
DynamicNotchintoApplications. - Launch the app.
- Grant the permissions needed for the features you want to use.
- If macOS blocks the first launch, allow it from
System Settings > Privacy & Security.
โ Requirements
- macOS 14.6 or later
- Works on both notched MacBooks and non-notched displays (automatically rendering as a floating Dynamic Island capsule)
- Feature-specific permissions as needed:
- Accessibility for custom HUD interception and some system-level interactions
- Bluetooth access for accessory status updates
- Screen Recording access for audio-reactive Now Playing visualization where macOS requires it
- Media/Now Playing access where macOS requires it
๐ ๏ธ Build From Source
git clone https://github.com/jackson-storm/DynamicNotch.git
cd DynamicNotch
open DynamicNotch.xcodeproj
Then run the DynamicNotch scheme from Xcode. Swift Package Manager dependencies are resolved by the project.
๐ป Gallery
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Note: This gallery displays only a selection of the events, live activities, and temporary alerts supported by DynamicNotch. Many other states, animations, and system transitions are supported.
๐งฐ Tech Stack
- SwiftUI for notch content and settings UI
- AppKit for windows, input handling, and macOS integration
- Combine for feature and settings streams
- Lottie for animation assets
๐ Localization
The project currently includes localized app content for:
- System language fallback
- English
- Russian
- Spanish
- Simplified Chinese
๐ค Acknowledgements
Special thanks to the following open-source projects and services that make DynamicNotch possible:
- Lottie for iOS โ for rendering premium, smooth vector animations.
- LRCLIB โ for providing the main engine for synchronized lyrics search.
- Lyrics.ovh โ for serving as a fallback database for static song lyrics.
- mediaremote-adapter โ for MediaRemote API integration.
๐ License
DynamicNotch is released under the GNU General Public License v3.0. See LICENSE for details.











