| Make your Mac glow. A stunning ambient edge light that wraps your entire screen in a smooth, customizable glow — perfect for streaming, video calls, presentations, focus sessions, or just making your desktop look incredible. Inspired by Windows Edge Light by Scott Hanselman. Built natively for macOS. |
![]() |
| Use Case | How It Helps |
|---|---|
| Streaming & Podcasting | Add a professional ambient glow to your setup. Toggle capture visibility so viewers see the effect — or keep it private. |
| Zoom, Teams & Video Calls | Stand out on camera with a polished edge glow that frames your screen shares and makes demos pop during meetings. |
| Presentations & Demos | Frame your screen with light to draw audience attention. Hide desktop icons for a clean look. Cursor reveal spotlights where you're pointing. |
| Low Vision & Accessibility | XDR brightness boost pushes your display beyond its normal limits — one click makes everything easier to see. (Requires XDR-capable display.) |
| Late Night Coding | Warm amber glow reduces eye strain. Adjustable brightness from whisper-quiet to blazing bloom. |
| Focus & Productivity | The glow creates a visual boundary that keeps your eyes on screen. Auto-hiding controls stay out of your way. |
| Multi-Monitor Setups | Light up one monitor or all of them. Cycle between displays instantly. |
| Replace Your Ring Light | A software ring light that lives on your screen — no desk clutter, no power cables, no USB hubs. Travels with your laptop. |
| MacEdgeLight | Physical Ring Light | |
|---|---|---|
| Cost | Free | $30–$100+ |
| Setup | Download and run | Mount, cable, power supply |
| Portability | Built into your Mac — goes everywhere | Extra gear to pack and carry |
| Adjustability | Brightness, color temp, border width, bloom — all instant | Limited dials, fixed position |
| Desk Space | Zero | Needs a stand or clip |
| Multi-Monitor | One click to light all screens | Buy one per monitor |
| Screen Capture | Toggle on/off per recording | Always physically visible |
| Eye Strain | Glow wraps the screen edge — light comes from where you're looking | Light source pointed at your face |
- Smooth glowing border around your entire screen with rounded corners
- Adjustable brightness from subtle (20%) to blazing bloom (200%)
- Color temperature control from cool blue-white to warm amber
- Adjustable border width (10px–150px)
- Click-through — never interferes with your work
- Hold any adjustment button for continuous fine-grained control
- Push your display into extended dynamic range for maximum brightness
- Dual technique: invisible Metal EDR overlay signals macOS to grant headroom, while linear gamma scaling pushes display values into the extended range — bright without washout
- Dynamically adapts to display conditions (thermals, ambient light, battery state)
- Hardware backlight maximized via DisplayServices for peak luminance
- One-click toggle from the control bar or status bar menu
- Ideal for users with low vision or anyone working in bright environments
- Requires a Mac with an XDR display (MacBook Pro with Liquid Retina XDR, Pro Display XDR)
- Push brightness past 100% for an additive white-hot bloom effect
- Glow radius expands and intensifies at higher brightness levels
- Smooth animated transitions between all settings
- Toggle a feathered circular cutout that follows your cursor
- See through the glow wherever your mouse goes — great for presentations
- Floating magnifier loupe that follows your cursor
- Useful for demos and presentations where fine detail matters
- Hidden from screen capture by default (invisible in Zoom, Teams, or recordings)
- Toggle visibility to show the glow in streams and recordings
- Perfect for streamers who want the effect on camera
- Below — light stays under the menu bar
- Extend — light covers the menu bar for a fully immersive look
- Auto (default) — light extends over menu bar but smoothly reveals it when your cursor approaches, then extends back when you move away
- Show/hide all desktop icons with one click
- Clean desktop for presentations, screencasts, or focus time
- Automatically restored when the app quits
- Show on a single monitor or all monitors simultaneously
- Cycle between monitors with a button press
- Adapts automatically when monitors are plugged in or removed
- Floating HUD toolbar with quick access to everything
- Drag grip on the right side for repositioning
- Fades away after 3 seconds of inactivity — reappears instantly on hover
- Background dynamically darkens when overlapping the glow
- Double-click the lightbulb to reset ring light settings (brightness, color, border) while preserving EDR boost, magnifier, and desktop icon state
- Full reset button on the control bar or status bar menu restores everything
- Pure Swift, native AppKit — no Electron, no web views
- Runs as a menu bar utility (no Dock icon)
- Optional launch at login
- Zero dependencies
| Shortcut | Action |
|---|---|
Cmd + Shift + L |
Toggle light on/off |
Cmd + Shift + Up |
Increase brightness |
Cmd + Shift + Down |
Decrease brightness |
The floating toolbar provides quick access to all features:
| Icon | Function | Toggle |
|---|---|---|
| Sun (dim) | Decrease brightness (hold to fine-adjust) | |
| Sun (bright) | Increase brightness (hold to fine-adjust) | |
| Flame | Warmer color temperature (hold to fine-adjust) | |
| Snowflake | Cooler color temperature (hold to fine-adjust) | |
| Compress | Thinner border (hold to fine-adjust) | |
| Expand | Thicker border (hold to fine-adjust) | |
| Lightbulb | Toggle light on/off — double-click to reset | Filled when on |
| Monitor | Switch to next monitor | |
| Monitors | All monitors mode | Filled when on |
| Menu bar | Menu bar mode: Below → Extend → Auto | Cycles through 3 states |
| Circle | Cursor reveal mode | Filled when on |
| Video | Show in screen capture | Filled when on |
| HDR | XDR brightness boost | Filled when on |
| Magnifier | Floating magnifier loupe | Filled when on |
| Eye | Hide desktop icons | Swaps to eye.slash |
| Reset | Reset all settings to defaults | |
| X | Hide controls | |
| Grip | Drag to reposition the control bar |
- macOS 13 Ventura or later
- Retina and non-Retina displays supported
- Wide-gamut (P3) color displays supported
- XDR brightness boost requires an XDR-capable display
Download the latest .dmg or .zip from Releases.
The app is signed and notarized by Apple — just open the DMG, drag to Applications, and launch. No Gatekeeper warnings.
Open MacEdgeLight.xcodeproj in Xcode and build, or use the Makefile:
make build # Debug build
make release # Build DMG + zip for distribution
make dmg # DMG only (drag-to-Applications)
make zip # Zip only
make clean # Clean build artifactsThe edge light is rendered in a fullscreen, click-through overlay window using Core Graphics. Each frame is drawn with multiple layered passes:
-
Outer glow — Concentric expanding rounded rectangles drawn outward from the frame edge, each with decreasing opacity. Creates the soft light spill effect around the border.
-
Solid frame — The main visible border. A frame shape (outer rect minus inner rect) is filled with a diagonal linear gradient (white → tinted → white) using even-odd clipping. Color temperature shifts the tint from cool blue-white to warm amber.
-
Inner glow — Soft light bleeding inward from the frame edge, giving the border a volumetric look.
-
Bloom mode — When brightness exceeds 100%, the excess is rendered as additive light using
.plusLighterblend mode. The glow radius expands proportionally — at 200% brightness, the bloom radius doubles. -
Cursor cutout — A radial gradient in
.destinationOutblend mode punches a feathered circle through the glow at the cursor position.
The brightness boost uses a dual technique for maximum brightness without washout:
-
Invisible Metal EDR overlay — A full-screen
CAMetalLayerrenders EDR values with alpha=0 (invisible) in extended linear Display P3 color space. This signals macOS to grant extended dynamic range headroom without visually affecting screen content. A CVDisplayLink keeps the EDR headroom alive by continuously presenting frames. -
Linear gamma scaling — The display's gamma transfer table is scaled by 1.45x, pushing all pixel values proportionally into the EDR range. Unlike power-curve gamma (which compresses midtones and washes out), linear scaling preserves relative contrast — blacks stay black, everything else gets brighter.
-
Hardware backlight max — Set to 100% via the private DisplayServices framework for peak panel luminance.
The overlay dynamically adapts to the current headroom macOS grants (typically ~2.667x on XDR displays), which varies with thermals, ambient light, and battery state.
All visual properties use per-frame lerp interpolation at 60fps, settling in ~0.3 seconds. Timers run in .common run loop mode so animations continue during button hold interactions.
- Retina/HiDPI — Core Graphics rendering at full backing scale factor (2x–3x pixel density)
- Wide-gamut color — Uses the display's native color space for accurate P3 color reproduction on MacBook Pro, Studio Display, and Pro Display XDR
The overlay ignores all mouse events, sits at a custom window level, and is excluded from screen capture by default. One overlay window is created per active monitor. The control panel floats above the overlay to remain accessible at any border thickness.
PolyForm Strict License 1.0.0 — Free for noncommercial, personal, educational, and nonprofit use. No redistribution or modification permitted.
- Original concept: Scott Hanselman's EdgeLight
- macOS implementation by Richard Crane
Transform your screen into an ambient light show with MacEdgeLight!
Download the latest release and give your Mac the glow it deserves.
Powered by MILL5 Explore Richard Crane on Microsoft MVP Listen to the Inventing Fire with AI podcast for insights on technology and innovation. For support, contact: rich@mill5.com
