Skip to content

Releases: AXIOVEX/slidewand

SlideWand v1.3.6

Choose a tag to compare

@github-actions github-actions released this 30 Sep 16:38

SlideWand v1.3.6 — Wand calibration

Teach SlideWand which fingertip is the tip of your wand, and waves track
the tip instead of the palm.

New in v1.3.6

  • Calibrate Wand… (menu bar): hold your hand up like a wand, tip pointing
    up, and hold still for a couple of seconds. SlideWand learns which landmark
    is the tip (e.g. your index fingertip) and saves it — calibration survives
    restarts.
  • Tip-tracked waves: once calibrated, the motion trail, wave detection,
    and hold steadiness all run off the wand tip, so quick flicks of the tip
    drive next/previous. Without calibration the app falls back to palm tracking.
  • Tip marker on the camera preview: the calibrated tip gets a cyan
    "TIP" marker so you can see exactly what the app is following.
  • Steadiness + visibility checks: calibration refuses a shaky capture or
    one where the hand wasn't in view, and tells you to try again.
  • The gesture test window now shows wand state ("Wand: index fingertip ✓"
    or "Wand: not calibrated").

Still true

  • Native Swift (Vision + AVFoundation), everything on-device, no dependencies.
  • Mirrored preview is display-only (Core Animation transform); the app never
    touches AVCaptureConnection mirroring/rotation.
  • The self-updater uses only public github.com release/download URLs —
    no GitHub API, no keys.

Install / update

Download SlideWand-macos.zip below, unzip, and replace
/Applications/SlideWand.app. First launch: right-click → Open
(the app is ad-hoc signed, not Apple-notarized).

SlideWand v1.3.4

Choose a tag to compare

@github-actions github-actions released this 30 Sep 16:33

SlideWand 1.3.4

What changed

  • Simpler, sturdier update checks. "Check for Updates" no longer goes through the GitHub API (which rate-limits anonymous calls and could fail with "Couldn't check for updates"). It now just follows the public github.com/.../releases/latest redirect — the final URL carries the latest version — and downloads the asset from the plain release download URL. No keys, no API.
  • Version 1.3.4 (build 9). Regular Dock app; still not Apple-notarized (right-click → Open on first launch).

Install

Download SlideWand-macos.zip below, unzip, move SlideWand.app to /Applications, then right-click → Open (first launch only). Grant Camera when asked.


SlideWand 1.3.3

What changed

  • Mirrored camera preview. The preview is now flipped horizontally (selfie-style), which is what the gesture math always assumed — the hand skeleton overlay and wave directions now line up with the video. Done with a display-only layer transform; the macOS 26 capture-connection mirroring call that crashed 1.3.0/1.3.1 stays removed for good.
  • Fixed a crash on quit. The menu-bar refresh timer could fire while the app was tearing down (EXC_BAD_ACCESS in the menu tick); it is now stopped in applicationWillTerminate, and the camera is released on quit.
  • Version 1.3.3 (build 8). Regular Dock app; still not Apple-notarized (right-click → Open on first launch).

Install

Download SlideWand-macos.zip below, unzip, move SlideWand.app to /Applications, then right-click → Open (first launch only). Grant Camera when asked.


SlideWand 1.3.2

What changed

  • Fixed the launch crash (the real bug). On macOS 26's new camera stack, setting the preview layer's isVideoMirrored throws an Objective-C exception, which macOS turns into an instant crash a few seconds after launch. The mirroring call is removed — the preview now shows unmirrored video, which is also the correct orientation for directional gestures.
  • Kept from 1.3.1: explicit main.swift bootstrap and loud [SlideWand] startup prints when run from Terminal.
  • Version 1.3.2 (build 7). Regular Dock app; still not Apple-notarized (right-click → Open on first launch).

Install

Download SlideWand-macos.zip below, unzip, move SlideWand.app to /Applications, then right-click → Open (first launch only). Grant Camera when asked.

SlideWand v1.3.3

Choose a tag to compare

@github-actions github-actions released this 30 Sep 16:27

SlideWand 1.3.3

What changed

  • Mirrored camera preview. The preview is now flipped horizontally (selfie-style), which is what the gesture math always assumed — the hand skeleton overlay and wave directions now line up with the video. Done with a display-only layer transform; the macOS 26 capture-connection mirroring call that crashed 1.3.0/1.3.1 stays removed for good.
  • Fixed a crash on quit. The menu-bar refresh timer could fire while the app was tearing down (EXC_BAD_ACCESS in the menu tick); it is now stopped in applicationWillTerminate, and the camera is released on quit.
  • Version 1.3.3 (build 8). Regular Dock app; still not Apple-notarized (right-click → Open on first launch).

Install

Download SlideWand-macos.zip below, unzip, move SlideWand.app to /Applications, then right-click → Open (first launch only). Grant Camera when asked.


SlideWand 1.3.2

What changed

  • Fixed the launch crash (the real bug). On macOS 26's new camera stack, setting the preview layer's isVideoMirrored throws an Objective-C exception, which macOS turns into an instant crash a few seconds after launch. The mirroring call is removed — the preview now shows unmirrored video, which is also the correct orientation for directional gestures.
  • Kept from 1.3.1: explicit main.swift bootstrap and loud [SlideWand] startup prints when run from Terminal.
  • Version 1.3.2 (build 7). Regular Dock app; still not Apple-notarized (right-click → Open on first launch).

Install

Download SlideWand-macos.zip below, unzip, move SlideWand.app to /Applications, then right-click → Open (first launch only). Grant Camera when asked.

SlideWand v1.3.2

Choose a tag to compare

@github-actions github-actions released this 30 Sep 16:20

SlideWand 1.3.2

What changed

  • Fixed the launch crash (the real bug). On macOS 26's new camera stack, setting the preview layer's isVideoMirrored throws an Objective-C exception, which macOS turns into an instant crash a few seconds after launch. The mirroring call is removed — the preview now shows unmirrored video, which is also the correct orientation for directional gestures.
  • Kept from 1.3.1: explicit main.swift bootstrap and loud [SlideWand] startup prints when run from Terminal.
  • Version 1.3.2 (build 7). Regular Dock app; still not Apple-notarized (right-click → Open on first launch).

Install

Download SlideWand-macos.zip below, unzip, move SlideWand.app to /Applications, then right-click → Open (first launch only). Grant Camera when asked.

SlideWand v1.3.1

Choose a tag to compare

@github-actions github-actions released this 30 Sep 16:14

SlideWand 1.3.1

What changed

  • Explicit app bootstrap (Sources/main.swift): the delegate is now wired by hand instead of relying on @main synthesis — removes all doubt about the launch path.
  • Loud startup diagnostics: the app now prints each startup stage to stdout ([SlideWand] ...), so running the binary directly in Terminal shows exactly how far launch gets. Log path and log-write success are printed too.
  • Version 1.3.1 (build 6). Still a regular Dock app; still not Apple-notarized (right-click → Open on first launch).

Install

Download SlideWand-macos.zip below, unzip, move SlideWand.app to /Applications, then right-click → Open (first launch only).

SlideWand v1.3.0

Choose a tag to compare

@github-actions github-actions released this 30 Sep 15:45

SlideWand v1.3.0 — regular Dock app (fixes invisible launch on macOS 26)

What changed

  • SlideWand is a regular Mac app again (Dock icon, normal activation) instead of
    menu-bar-only. A macOS 26 Tahoe regression silently parks the status items
    and windows of LSUIElement apps — v1.2.x launched with no visible UI at all
    on affected systems. The menu-bar icon is still there when the OS paints it,
    but the Dock icon is now the reliable home.
  • The preview window explicitly activates the app on launch so it always comes
    forward.
  • Launch diagnostics now write to ~/Library/Logs/SlideWand.log.

Everything from v1.2.x is included: Gesture Test window, Preferences with live
tuning sliders, launch-at-login, and self-updates from GitHub releases.


SlideWand v1.2.1 — launch-window fix + diagnostics

What's new

  • Fixed: on some systems v1.2.0 launched with no visible windows. The redundant setActivationPolicy(.accessory) call (already covered by LSUIElement in Info.plist) has been removed.
  • Added launch diagnostics: the app now writes /tmp/SlideWand.log with its startup progress, so any future launch issue can be diagnosed from the log.

Everything from v1.2.0 is included: menu-bar app, Gesture Test window, Preferences with live tuning sliders, launch-at-login, and self-updates from GitHub releases.


What's new

  • Preferences window (👋 → Preferences…, or ⌘,): sliders for swipe distance, hold time, cooldown, and minimum hand size — all apply instantly, no rebuild, no restart. Plus an Open SlideWand at login checkbox and a Restore Defaults button. Settings persist between launches.
  • Self-updates: SlideWand now checks GitHub releases on launch (at most once every 6 hours) and on demand via 👋 → Check for Updates…. One click downloads the new release, swaps the app in place, and relaunches. That's the only network the app ever uses.
  • Menu-bar app (new since v1.0.0): SlideWand lives in the menu bar (👋 icon) with no Dock icon. The camera preview is a window you can close — the app keeps running. The menu icon turns red if the camera is off or Accessibility is blocking keys.
  • Gesture Test window (👋 → Open Gesture Test…): watch your live hand state, big NEXT/PREV flashes, running counters, and a timestamped event log. Every trigger also presses a real arrow key, so you can verify it end to end.
  • Fixed: the preview window drew nothing until the first camera frame arrived, so a slow camera start looked like an empty window. It now renders its HUD immediately and shows "Waiting for camera permission…" while macOS prompts.

Install

  1. Download SlideWand-macos.zip below and unzip it.
  2. Right-click SlideWand.app → Open (one time only — not Apple-notarized yet, so Gatekeeper needs the manual OK; after that it opens normally). If macOS still refuses: xattr -dr com.apple.quarantine /path/to/SlideWand.app
  3. Grant Camera when prompted.
  4. Grant Accessibility: System Settings → Privacy & Security → Accessibility → add SlideWand. The app opens that page for you on first run.

Requires macOS 14 or later.

Gestures

Do this Happens
Wave hand quickly to your right Next slide →
Wave hand quickly to your left ← Previous slide
Hold an open palm still ~1 sec Next slide →
Hold a closed fist still ~1 sec ← Previous slide

Privacy

Everything runs on-device with Apple's Vision framework. The camera feed is processed in memory and never saved, uploaded, or transmitted. The only network the app makes is checking github.com/AXIOVEX/slidewand for new releases.

SlideWand v1.2.1

Choose a tag to compare

@github-actions github-actions released this 30 Sep 15:26

SlideWand v1.2.1 — launch-window fix + diagnostics

What's new

  • Fixed: on some systems v1.2.0 launched with no visible windows. The redundant setActivationPolicy(.accessory) call (already covered by LSUIElement in Info.plist) has been removed.
  • Added launch diagnostics: the app now writes /tmp/SlideWand.log with its startup progress, so any future launch issue can be diagnosed from the log.

Everything from v1.2.0 is included: menu-bar app, Gesture Test window, Preferences with live tuning sliders, launch-at-login, and self-updates from GitHub releases.


What's new

  • Preferences window (👋 → Preferences…, or ⌘,): sliders for swipe distance, hold time, cooldown, and minimum hand size — all apply instantly, no rebuild, no restart. Plus an Open SlideWand at login checkbox and a Restore Defaults button. Settings persist between launches.
  • Self-updates: SlideWand now checks GitHub releases on launch (at most once every 6 hours) and on demand via 👋 → Check for Updates…. One click downloads the new release, swaps the app in place, and relaunches. That's the only network the app ever uses.
  • Menu-bar app (new since v1.0.0): SlideWand lives in the menu bar (👋 icon) with no Dock icon. The camera preview is a window you can close — the app keeps running. The menu icon turns red if the camera is off or Accessibility is blocking keys.
  • Gesture Test window (👋 → Open Gesture Test…): watch your live hand state, big NEXT/PREV flashes, running counters, and a timestamped event log. Every trigger also presses a real arrow key, so you can verify it end to end.
  • Fixed: the preview window drew nothing until the first camera frame arrived, so a slow camera start looked like an empty window. It now renders its HUD immediately and shows "Waiting for camera permission…" while macOS prompts.

Install

  1. Download SlideWand-macos.zip below and unzip it.
  2. Right-click SlideWand.app → Open (one time only — not Apple-notarized yet, so Gatekeeper needs the manual OK; after that it opens normally). If macOS still refuses: xattr -dr com.apple.quarantine /path/to/SlideWand.app
  3. Grant Camera when prompted.
  4. Grant Accessibility: System Settings → Privacy & Security → Accessibility → add SlideWand. The app opens that page for you on first run.

Requires macOS 14 or later.

Gestures

Do this Happens
Wave hand quickly to your right Next slide →
Wave hand quickly to your left ← Previous slide
Hold an open palm still ~1 sec Next slide →
Hold a closed fist still ~1 sec ← Previous slide

Privacy

Everything runs on-device with Apple's Vision framework. The camera feed is processed in memory and never saved, uploaded, or transmitted. The only network the app makes is checking github.com/AXIOVEX/slidewand for new releases.

SlideWand v1.2.0

Choose a tag to compare

@github-actions github-actions released this 30 Sep 13:41

SlideWand v1.2.0 — preferences, tuning UI, self-updates

What's new

  • Preferences window (👋 → Preferences…, or ⌘,): sliders for swipe distance, hold time, cooldown, and minimum hand size — all apply instantly, no rebuild, no restart. Plus an Open SlideWand at login checkbox and a Restore Defaults button. Settings persist between launches.
  • Self-updates: SlideWand now checks GitHub releases on launch (at most once every 6 hours) and on demand via 👋 → Check for Updates…. One click downloads the new release, swaps the app in place, and relaunches. That's the only network the app ever uses.
  • Menu-bar app (new since v1.0.0): SlideWand lives in the menu bar (👋 icon) with no Dock icon. The camera preview is a window you can close — the app keeps running. The menu icon turns red if the camera is off or Accessibility is blocking keys.
  • Gesture Test window (👋 → Open Gesture Test…): watch your live hand state, big NEXT/PREV flashes, running counters, and a timestamped event log. Every trigger also presses a real arrow key, so you can verify it end to end.
  • Fixed: the preview window drew nothing until the first camera frame arrived, so a slow camera start looked like an empty window. It now renders its HUD immediately and shows "Waiting for camera permission…" while macOS prompts.

Install

  1. Download SlideWand-macos.zip below and unzip it.
  2. Right-click SlideWand.app → Open (one time only — not Apple-notarized yet, so Gatekeeper needs the manual OK; after that it opens normally). If macOS still refuses: xattr -dr com.apple.quarantine /path/to/SlideWand.app
  3. Grant Camera when prompted.
  4. Grant Accessibility: System Settings → Privacy & Security → Accessibility → add SlideWand. The app opens that page for you on first run.

Requires macOS 14 or later.

Gestures

Do this Happens
Wave hand quickly to your right Next slide →
Wave hand quickly to your left ← Previous slide
Hold an open palm still ~1 sec Next slide →
Hold a closed fist still ~1 sec ← Previous slide

Privacy

Everything runs on-device with Apple's Vision framework. The camera feed is processed in memory and never saved, uploaded, or transmitted. The only network the app makes is checking github.com/AXIOVEX/slidewand for new releases.

SlideWand v1.0.0

Choose a tag to compare

@github-actions github-actions released this 30 Sep 13:12

SlideWand v1.0.0 — first release

Wave your hand to change slides. No clicker, no keyboard, no standing next to the laptop.

Install

  1. Download SlideWand-macos.zip below and unzip it.
  2. Right-click SlideWand.app → Open (one time only). The app isn't Apple-notarized yet, so Gatekeeper needs this manual OK on first launch — after that it opens normally with a double-click.
  3. Grant Camera access when prompted.
  4. Grant Accessibility: System Settings → Privacy & Security → Accessibility → add SlideWand. (macOS never prompts for this one — the app opens that Settings page for you on first run and shows a banner until it's granted. It starts working the moment you toggle it, no restart needed.)

Then start your slideshow (Keynote, PowerPoint, Google Slides, PDF — anything that advances with arrow keys), make sure it's the focused window, and wave.

Gestures

Do this Happens
Wave hand quickly to your right Next slide →
Wave hand quickly to your left ← Previous slide
Hold an open palm still ~1 sec Next slide →
Hold a closed fist still ~1 sec ← Previous slide

Privacy

Everything runs on-device with Apple's Vision framework. The camera feed is processed in memory and never saved, uploaded, or transmitted. The app makes no network connections at all.

SlideWand v0.2.4

Choose a tag to compare

@github-actions github-actions released this 30 Sep 18:21

SlideWand v0.2.4

What's new in v0.2.4

  • Release pipeline fix. v0.2.3's build never shipped (the CI workflow file
    had an error), so v0.2.4 carries the full v0.2.3 feature set: click-to-pick
    tip calibration, the quit-crash fix, and stable signing so the Accessibility
    grant survives updates.

What's new in v0.2.3

  • Calibration step 1 is now click-to-pick — no more aiming at a ring.
    The old flow asked you to hold the tip on a glowing ring until the color
    "steadied", but handheld jitter meant the steadiness check almost never
    passed, with no feedback about why. Now: hold the wand tip-up in the dashed
    box and click the tip directly in the camera preview. The live yellow
    dot shows exactly what the app locked onto — click again to re-pick, then
    hold still for a second. Steps 2–3 (tilt left / tilt right) are unchanged.
  • Fixed a crash on quit. The 1-second menu timer could fire while the app
    was tearing down (EXC_BAD_ACCESS inside the menu refresh). The timer now
    stops the moment termination is requested, and the refresh bails out during
    teardown. Quitting is clean.
  • Accessibility permission survives updates now. Every build used to be
    ad-hoc signed, which gave it a new identity each time — macOS silently tied
    your grant to the old build, so the red banner kept coming back. Releases
    are now signed with one persistent SlideWand identity, so the grant carries
    over. If this update still shows the banner, remove SlideWand with – and
    re-add it with + in Settings → Privacy & Security → Accessibility — that's
    the last time you'll need to. (Not Apple-notarized: first launch still
    needs right-click → Open.)
  • The app also detects the stale-grant case specifically: if you granted
    permission before and an update broke it, the re-grant walkthrough says so
    plainly instead of sounding like a first-time setup.

What's new in v0.2.2

  • New detector: tracks the tip by what it looks like, not by geometry.
    Real wands are gnarly and twisted — clean rectangle detection kept missing
    them. Now calibration photographs the tip's actual color, and every frame
    searches around the last tip for the best-matching patch (preferring the
    topmost match, so the track can't slide down the shaft onto similar-looking
    grain). Rectangle detection is still there as a backup: when its geometry
    agrees with the color track, the tip snaps to the more precise corner.
    Rectangle detection is also focused on a region around the wand instead of
    the whole frame, so background clutter stops stealing the lock.
  • Clearer calibration overlay. Step 1 no longer shows an abstract arrow —
    it shows a picture of a wand with its tip resting on a pulsing target ring:
    match the picture, then hold still. The ring turns green once the tip is
    acquired. Steps 2/3 show a tilted wand with a curved "there and back" arrow.
    (The old overlay also drew the target box at the bottom of the frame while
    detection looked at the top — fixed; box and detector agree now.)

What's new in v0.2.1

What's new in v0.2.0

  • Tracks your physical wand — the stick itself, not your hand. Each video
    frame is scanned for stick-like rectangles; the tip is the topmost end.
    When the wand is visible, waves and motion track the wand tip (magenta TIP
    marker, cyan outline). Hands are never mistaken for the wand: with no wand
    in view, gestures fall back to the palm.
  • Guided 3-step wand calibration (replaces the old fingertip learning):
    1. hold the top third of your wand in the target box, tip pointing up,
      until it's steady — this photographs the tip to learn its shape and color;
    2. slowly tilt left and back to center; 3. slowly tilt right and back to
      center — so tracking stays locked while the wand moves. The video overlay
      shows per-step instructions, a live yellow dot on the detected tip, and a
      progress bar; the wand's color/shape profile is saved for future launches.
  • The red "ACCESSIBILITY BLOCKED" tray line is now clickable — it opens the
    remove-and-re-add walkthrough (macOS ties the grant to each build, so every
    update needs it redone for /Applications/SlideWand.app).

What's new in v0.1.2

  • Calibration actually sees fist-like wand grips. The hand tracker used to
    throw away the entire frame if any single one of the 21 joints read
    low-confidence — and a wand grip always has curled, low-confidence joints.
    Now each joint keeps its last good position instead, so those frames arrive
    and calibration can learn the tip. The learned tip must still be genuinely
    seen (not remembered) in at least half the frames.
  • Calibration guidance overlay on the video: while calibrating, the
    preview dims and shows a dashed target box (hold the wand in here), a
    TIP UP arrow, a live yellow dot on what the app currently thinks the tip
    is, the instruction ("I see your wand — hold it still…" /
    "Show your wand to the camera…"), and a progress bar.
  • Calibration is more forgiving about hand size than gesture detection
    (frames are averaged and steadiness-checked anyway).

What's new in v0.1.1

  • File menu mirrors the tray menu: Open Gesture Test…, Calibrate Wand…,
    Preferences…, Check for Updates…, and Show/Hide Camera Preview are now in
    the File menu too — everything reachable from the menu bar, not just the
    status icon.
  • Accessibility grant helper: "Grant Accessibility Access…" now shows
    the native macOS prompt, and if the app is still untrusted afterward it
    explains the real fix — remove SlideWand with the – button in
    Settings → Privacy & Security → Accessibility and re-add it (macOS ties
    the grant to each build's signature, so the switch can look on while not
    applying to the new build).

What's in v0.1.0

Hand-gesture slide control for your Mac. Wave the tip of your wand
← / → to change slides.

What's in 0.1.0

  • Wand calibration ("Calibrate Wand…" in the menu): hold your hand up
    like a wand, tip pointing up, hold still for a couple of seconds.
    SlideWand learns which fingertip is the tip and tracks that point —
    waves go off the tip and how it moves. A cyan TIP marker on the camera
    preview shows what the app is following. Without calibration, waves track
    the palm.
  • Full menu bar: SlideWand, File, View, Window, and Help menus,
    including About SlideWand (with version info), Preferences, and
    Grant Accessibility Access.
  • Gesture test window: live skeleton, trail, event log, camera +
    accessibility + wand + version status.
  • Preferences: tuning sliders (swipe distance, hold time, cooldown,
    min hand size) applied live, plus launch-at-login.
  • Self-updater: checks the public github.com releases page on launch
    (6h throttle) and via the menu; downloads and installs with a relaunch
    script. No GitHub API, no keys.
  • Mirrored camera preview (display-only transform — the capture
    connection is never touched), on-device Vision hand tracking, arrow keys
    via CGEvent.

Notes

  • Native Swift, no dependencies, everything on-device.
  • Ad-hoc signed, not Apple-notarized: first launch needs right-click → Open.
  • Needs Camera and Accessibility permissions. After updating, if keys stop
    working, toggle SlideWand off and on in
    Settings → Privacy & Security → Accessibility (macOS ties the grant to
    each new build's signature).

Install / update

Download SlideWand-macos.zip below, unzip, quit any running SlideWand,
replace /Applications/SlideWand.app, and launch. First launch:
right-click → Open.