https://github.com/madebysan/cue
Floating macOS teleprompter. Listens and auto-scrolls your script to match what you say.
https://github.com/madebysan/cue
macos menubar speech-recognition swift swiftui teleprompter
Last synced: 27 days ago
JSON representation
Floating macOS teleprompter. Listens and auto-scrolls your script to match what you say.
- Host: GitHub
- URL: https://github.com/madebysan/cue
- Owner: madebysan
- License: mit
- Created: 2026-04-21T01:14:05.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2026-05-15T20:12:55.000Z (about 2 months ago)
- Last Synced: 2026-05-15T23:13:01.040Z (about 2 months ago)
- Topics: macos, menubar, speech-recognition, swift, swiftui, teleprompter
- Language: Swift
- Size: 1.37 MB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README

Cue
Floating macOS teleprompter.
Listens and auto-scrolls your script to match what you say.
Version 0.1.0 · macOS 14+ · Apple Silicon & Intel

How hard can it be to build a teleprompter? It's basically scrolling text. I wanted to push it a bit more. What if the scrolling matched your voice cadence and speech? What if you start going off-rails and don't follow the script, will the teleprompter pause for you to regroup before continuing scrolling?
It's useful when recording videos to camera: tutorials, talking heads, pitch recordings, product walkthroughs. Anything where you want to keep your eyes near the camera while also reading a prepared script.
## Features
- **Voice-cadence scrolling.** Catches up when you pause, rephrase, or skip lines.
- **Invisible to screen share and screenshots** by default, so it doesn't leak into recordings.
- **Floats above fullscreen apps** and stays put when you switch Spaces.
- On-device speech recognition via the macOS Speech Recognizer. Nothing leaves your Mac.
- Works with AirPods and Bluetooth mics via the AVCaptureSession path.
## How it works
Paste your script into the floating window and press play. After a 3-2-1 countdown the app starts listening via the macOS speech recognizer, matches what you say to positions in the script, and scrolls so your current line stays near the top. Pause, rephrase, or skip ahead and the matcher catches up within a few words.
The window is invisible to screen share and screenshots by default, sits above full-screen apps, and crosses Spaces. A subtle ✨ menu bar icon shows or hides it.
## Requirements
- macOS 14 (Sonoma) or later (tested on macOS 26.3)
- Microphone access and Speech Recognition access
- Siri & Dictation enabled in System Settings
- AirPods or Bluetooth mics work via the AVCaptureSession path
## Running it
```bash
cd ~/Projects/cue
# Regenerate the Xcode project if you edit project.yml
/opt/homebrew/bin/xcodegen generate
# Build
xcodebuild \
-project Cue.xcodeproj \
-scheme Cue \
-destination 'platform=macOS' \
build
# Launch
APP_PATH=$(find ~/Library/Developer/Xcode/DerivedData -name "Cue.app" -path "*Debug*" | head -1)
open "$APP_PATH"
```
Or open `Cue.xcodeproj` in Xcode and press ⌘R.
## Keyboard shortcuts
- **Space.** Start / pause.
- **Escape.** Pause.
- **↑ / ↓.** Nudge position manually (5 words back / forward).
- **⌘,** opens Settings (opacity, text size defaults).
- **⌘Q** quits.
## Known limitations
- **TCC permission prompt on first launch.** The current DMG build doesn't reliably surface the macOS Speech Recognition and Microphone permission prompts from the `MenuBarExtra` Button closure. On a fresh machine you may need to grant permissions manually via System Settings → Privacy & Security → Speech Recognition + Microphone, then relaunch. Fix in progress.
## Feedback
Found a bug or have a feature idea? [Open an issue](https://github.com/madebysan/cue/issues).
## License
[MIT](LICENSE)
---
Made by [santiagoalonso.com](https://santiagoalonso.com)