Quick Start
Get your ring paired and your first gesture handler running in under five minutes.
Prerequisites
- A charged, paired Haptic Harmony Ring (see Installation)
- Node.js 18+ if you're building against the SDK
Step 1: Try the Core Gestures
Before writing any code, get a feel for the ring itself:
- Tap / double-tap / hold on the PAD area — a short haptic pulse confirms each
- Slide on the top PAD arch — activates the mic for a voice command
- Tilt — directional gestures, shown as on-screen cues in the companion app
Step 2: Build the SDK
git clone https://github.com/gestura-ai/gestura-app
cd gestura-app/sdk/typescript
npm install && npm run buildStep 3: Connect to the Ring
import { GesturaRing } from "@gestura/ring-sdk";
import { tauriTransport } from "@gestura/ring-sdk/tauri";
import { invoke } from "@tauri-apps/api/core";
import { listen } from "@tauri-apps/api/event";
const transport = tauriTransport(deviceId, { invoke, listen });
const ring = await GesturaRing.open({ transport });No hardware handy? Use MockTransport instead — it works fully offline for tests and demos.
Step 4: Listen for Gestures
ring.addEventListener("doubletap", () => runCommand());
ring.addEventListener("gesture", (e) =>
console.log(e.detail.type, "→", e.detail.action)); // e.g. "double_tap → execute"Step 5: Send Haptic Feedback
await ring.sendHaptic("tick");
await ring.sendWaveform(myInt16Samples, 8000); // ≤1024 samples (device FIFO)Troubleshooting
Gestures Not Registering
- No events firing: Confirm the ring shows as connected in your OS Bluetooth settings
- Slide doesn't activate mic: Slide must start on the top PAD arch, not the flat tap area
Transport Issues
- Tauri transport not wired up: Requires the thin
ring_write/ring_read/ring_subscribepassthrough commands on the Rust side — seesrc/transport/tauri.ts - Web Bluetooth: Planned, not yet available — use the Tauri or Mock transport today
Next Steps
- Read the Configuration Guide for transport options
- Learn about Voice + Haptic Confirmation
- Explore Device Switching for pairing with multiple devices
- Check out Gesture & Haptic Events for the full event reference
FAQ
Do I need the SDK to use the ring? No — the ring works standalone via its companion app. The SDK is for developers building custom integrations.
How accurate is gesture recognition? The PAD area distinguishes tap, hold, double-tap, and slide reliably in normal use; response time is under 2ms.
Can I connect more than one device? The ring maintains one active BLE connection at a time — see the device-switching guide to move between paired devices.
Does it work offline? Gesture and haptic feedback work standalone with no network required; MCP agent integrations need a reachable agent.