A native macOS cursor highlighter for presentations, live demos, and screen sharing.
CursorFlare turns an ordinary mouse pointer into a clear presentation signal. It is a lightweight menu-bar app for macOS with a continuous cursor trail, distinct click effects, and persistent drag-to-arrow annotations.
- Three trail styles: Line, Comet, and Sparkles
- Independent left-click, right-click, middle-click, and drag effects
- Persistent arrows with
⌘⇧+ drag; clear them with⌘⇧Esc - Menu-bar controls: left-click to toggle; right-click or Control-click to open the menu
- Native dark settings window with a live preview
- Built-in profiles: Presentation Yellow, Neon Comet, and Minimal
- Optional launch at login
- Accessibility onboarding and status display
- Multi-display transparent overlays that work across Spaces and full-screen apps
- Experimental system-cursor hiding using public macOS APIs only
Download the latest universal build from GitHub Releases:
CursorFlare-1.0.1-macos-universal.zip
The package runs on both Apple Silicon and Intel Macs. The current Alpha build is ad-hoc signed and not notarized yet:
- Unzip the downloaded file and move
CursorFlare.apptoApplications. - On the first launch, use Control-click → Open if macOS asks for confirmation.
- Grant Accessibility permission when prompted. This is required to observe global mouse events.
| Action | Shortcut |
|---|---|
| Toggle CursorFlare | ⌃⌥⌘H |
| Draw an arrow | ⌘⇧ + drag |
| Clear arrows | ⌘⇧Esc |
The arrow gesture intentionally passes through to the frontmost app, so modifier-drag behavior in that app can still occur.
CursorFlare needs Accessibility permission to observe global mouse events. It uses a listen-only event tap; it does not block or modify input.
The app does not request screen-recording or input-monitoring permission, makes no network requests, and stores only preferences and local profiles in UserDefaults. The experimental cursor-hiding switch is disabled by default.
Requirements: macOS 13+ and Swift 5.9+.
swift build
./Scripts/build-app.sh release
open dist/CursorFlare.appThe release script builds a universal app bundle for arm64 and x86_64, then applies a stable ad-hoc designated requirement for local Accessibility testing. A public signed and notarized distribution will need a real Apple Developer ID identity.
CursorFlare is an independent implementation informed by the interaction models of MouseTrail and ClickLight. See THIRD_PARTY_NOTICES.md for attribution and license text.
This project is released under the MIT License.
CursorFlare 是一款原生 macOS 菜单栏应用,用于演示、直播、培训和屏幕共享场景。它通过鼠标轨迹、点击反馈和拖拽箭头,让观众更容易看清讲解者的操作位置。
- 三种鼠标轨迹:Line、Comet、Sparkles
- 左键、右键、中键和拖拽效果可独立配置
- 使用
⌘⇧+ 拖拽绘制持久箭头,使用⌘⇧Esc清除箭头 - 菜单栏控制:左键点击切换效果,右键或 Control-click 打开菜单
- 原生深色设置窗口和实时预览
- 内置配置:Presentation Yellow、Neon Comet、Minimal
- 可选开机启动
- 辅助功能权限引导和状态显示
- 支持多显示器、多个 Space 以及全屏应用的透明覆盖层
- 实验性系统光标隐藏功能,仅使用公开的 macOS API
从 GitHub Releases 下载最新的 universal 版本:
CursorFlare-1.0.1-macos-universal.zip
该安装包同时支持 Apple Silicon 和 Intel Mac。当前 Alpha 版本使用 ad-hoc 签名,暂未进行 Apple notarization:
- 解压下载的文件,并将
CursorFlare.app移动到“应用程序”。 - 第一次启动时,如果 macOS 提示确认,请对应用执行 Control-click → 打开。
- 按提示授予“辅助功能”权限;应用需要该权限监听全局鼠标事件。
| 操作 | 快捷键 |
|---|---|
| 开关 CursorFlare | ⌃⌥⌘H |
| 绘制箭头 | ⌘⇧ + 拖拽 |
| 清除箭头 | ⌘⇧Esc |
箭头手势会有意穿透到当前前台应用,因此前台应用仍可能处理自己的修饰键拖拽行为。
CursorFlare 需要“辅助功能”权限来监听全局鼠标事件。应用使用只读的事件监听,不会拦截或修改输入。
应用不会请求屏幕录制或输入监控权限,不会发起网络请求,只会把偏好设置和本地配置保存在 UserDefaults 中。实验性的系统光标隐藏功能默认关闭。
环境要求:macOS 13+、Swift 5.9+。
swift build
./Scripts/build-app.sh release
open dist/CursorFlare.app发布脚本会分别构建 arm64 和 x86_64,合并为 universal 应用,并使用稳定的 ad-hoc designated requirement,方便本地测试辅助功能权限。正式签名和 notarization 需要 Apple Developer ID。
CursorFlare 是独立实现,交互模型参考了 MouseTrail 和 ClickLight。归因和许可证文本见 THIRD_PARTY_NOTICES.md。
本项目采用 MIT License 发布。
