Privacy-first dictation for macOS, local by default.
Most dictation tools assume a hosted account, a managed cloud pipeline, and opaque privacy tradeoffs. TapTalk exists to offer a local-first macOS dictation layer that still lets you opt into cloud speech-to-text on your own terms.
- Local transcription with
faster-whisper - Optional bring-your-own cloud providers and API keys
- No mandatory TapTalk account
- No subscription lock-in baked into the product
Preview builds are published on GitHub Releases.
- Public preview downloads are macOS only
- Current packaged preview artifacts are Apple Silicon only (
arm64) - The
.dmgis the recommended install path; a.zipis also published as a fallback - This first public preview is not notarized, so Gatekeeper will warn on first launch
- Open the latest GitHub Release.
- Download the latest TapTalk
arm64.dmg. - Drag
TapTalk.appinto/Applications. - Launch TapTalk from
/Applications.
If Gatekeeper blocks first launch, use one of these paths:
- In Finder, right-click
TapTalk.app, chooseOpen, then confirmOpen. - Or open
System Settings > Privacy & Securityand clickOpen Anywayfor TapTalk.
If you grant Accessibility or Input Monitoring during setup, macOS may require a restart before the Fn hotkey path reports as active.
TapTalk's primary product surface is the macOS Electron app. The CLI remains for development and debugging.
Fresh install on macOS:
curl -fsSL https://raw.githubusercontent.com/rwcod/TapTalk/main/scripts/install.sh | bashFrom an existing clone:
./scripts/install.sh --here --startThe script:
- installs or verifies
ffmpeg, Python 3.11, and Node via Homebrew - creates a local
.venv - runs
npm install - starts the Electron app
For local dictation, the in-app setup wizard can install or upgrade faster-whisper and pre-download the selected Whisper model on first run.
brew install ffmpeg python@3.11 node
npm install
npm startThen finish setup in the app:
- choose
Localfor on-device transcription - or choose
Cloudand paste your own API key for a supported provider
- Local mode keeps recording and transcription on your Mac
- Cloud mode sends audio to the provider you choose
- TapTalk does not require a TapTalk account or operate a mandatory hosted relay
- You bring your own provider and API key
- Detailed behavior lives in PRIVACY.md
Microphone: required to record audioAccessibility: required for auto-paste and for the Fn hotkey flowInput Monitoring: required for the Fn hotkey flow
If you avoid the Fn hotkey path, Fn-specific permissions are not required. After enabling Accessibility or Input Monitoring, restart the app if the setup wizard still shows the Fn listener as pending.
- Preview quality, not a polished GA release
- macOS only
- GitHub Release artifacts are Apple Silicon only today; do not assume Intel preview support
- First public preview is not notarized, so first-launch Gatekeeper friction is expected
- Local mode still depends on local Python,
ffmpeg, and a first-time model download - Cloud mode privacy, logging, and retention depend on your chosen provider
Release verification still requires the manual smoke checks in docs/maintainers/RELEASE_CHECKLIST.md.
- Contributing: CONTRIBUTING.md
- Security reporting: SECURITY.md
- Release checklist: docs/maintainers/RELEASE_CHECKLIST.md
ISC, see LICENSE.