A free, open-source teleprompter for macOS that sits right under the camera notch,
always on top and invisible in screen recordings.
Your script scrolls in a small black panel next to your Mac's camera, so you keep your eyes on the lens while you record talking-head videos, tutorials, webinars or courses. The panel is left out of every screen capture, so it never shows up in your recordings, screenshots or live streams.
- Under the notch. It docks flush under the MacBook camera notch: reading means looking at the camera.
- Invisible in recordings. Screenshots, screen recordings, OBS, and Zoom or Meet screen sharing never see it. Turn that off from the menu bar when you want it seen.
- Always on top. It floats above every app and every Space, full-screen apps included.
- Scrolls at your pace. Smooth 60 fps auto-scroll, with the speed on a slider or the ↑ and ↓ arrows,
and
Spaceto pause. - Pick up where you want. While paused, scroll with the trackpad to any point and press play from there, to record one section again.
- Cues in brackets. Paste your script with
Cmd+V; text in[brackets]shows dimmed, for stage cues like[Pause]or[Smile]. - Where you left it. Drag it anywhere and resize it: it remembers its size and place between launches.
- Nothing else. No account, no telemetry, no subscription.
Download: get BetterPrompter.app from the latest release,
unzip it, and drag it into /Applications.
macOS may say the app is from an unidentified developer, since it's ad-hoc signed. Right-click it and choose Open the first time, or allow it in System Settings → Privacy & Security.
Build it from source in about 30 seconds, with the Xcode Command Line Tools (xcode-select --install):
git clone https://github.com/simojam93/better-prompter.git
cd better-prompter
./build.sh
open BetterPrompter.app| Action | How |
|---|---|
| Play or pause | Space, or the ▶︎ button |
| Faster or slower | ↑ and ↓, or the speed slider |
| Jump anywhere | scroll with the trackpad or the wheel while paused |
| Back to the top | the ⏮ button, or menu bar → Restart from Top |
| Edit the script | the ✏️ button, or menu bar → Edit Script… (Cmd+V to paste) |
| Move or resize | drag the panel, or its edges (at least 335×225) |
| Show or hide | menu bar icon → Show / Hide Prompter |
| Show it in recordings | menu bar icon → Visible in Screen Recordings |
better-prompter sets its window's sharingType to .none. That tells the macOS window server to leave it
out of every capture pipeline: screencapture, QuickTime, OBS, browser screen sharing (Zoom, Google Meet,
Teams) and ScreenCaptureKit apps. You see your script; your audience never does.
One native Swift file, BetterPrompter.swift, about 450 lines of SwiftUI and AppKit, with no
dependencies. build.sh compiles it with swiftc in seconds and ad-hoc signs the app. It's tested on
macOS 14 Sonoma and later, on Apple Silicon and Intel. CI builds it on every push.
Issues and pull requests are welcome: a bug, a shortcut, a setting you miss. See CONTRIBUTING.md, and please follow the code of conduct.
MIT, see LICENSE. Free for personal and commercial use.
