Whootify — Whoop 5向けハプティック通知アプリ
概要
Whootifyは「Whoop + Notify」を目指したプロジェクトで、Whoop 5デバイスの振動モーターを使ってスマートフォン通知を受け取れるようにすることを目的としています。作者はスマートウォッチを通知専用に併用していた経験から、Whoopのハードウェアを通知用途に流用するアイデアを実装。Kotlinで書かれたモバイル側の実装や振動パターン定義(VIBRATION.md)などが含まれており、Whoop本体がサポートしていない通知振動を補完します。オープンソースとしてコードやパターンを公開しており、Whoopユーザーにとって余分なデバイスを減らす選択肢を提供します。
リポジトリの統計情報
- スター数: 1
- フォーク数: 0
- ウォッチャー数: 1
- コミット数: 10
- ファイル数: 9
- メインの言語: Kotlin
主な特徴
- Whoop 5 の振動モーターを利用してスマホ通知を振動で伝達するコンセプト
- Kotlinで記述されたモバイル向け実装(Androidを想定)
- 振動パターンの定義と管理(VIBRATION.md にパターン記載)
- シンプルな構成で試作・検証がしやすいリポジトリ構造
技術的なポイント
リポジトリから読み取れる技術的な注目点は以下です。まず言語はKotlinで、モバイル(主にAndroid)向けの実装が中心と推測されます。Whoop 5 の振動を通知に使うには、デバイスとの無線接続(一般的にはBluetooth Low Energy)が必要になるため、BLE接続の確立やGATT操作、適切な権限(Android 12以降のBLUETOOTH_*や位置情報、NotificationListener)を扱う実装が想定されます。通知を拾う仕組みはNotificationListenerServiceやNotificationListener APIの利用、通知の分類・フィルタリング、通知ごとの振動パターン割当てといったロジックが要ります。VIBRATION.mdは振動シーケンスや強度・間隔の定義を文書化しており、異なる通知タイプに応じたフィードバック設計が行われていることがわかります。また、常時接続・バックグラウンド動作のためにはForeground Serviceや省電力対策、再接続戦略が重要です。Whoopが公式に外部操作を許可していない場合はリバースエンジニアリングや非公式プロトコルの利用が伴い、セキュリティやユーザー同意の観点で注意が必要です。最後に、KotlinコルーチンやFlow、モジュール分割といったモダンAndroid開発のパターンを採用している可能性が高く、拡張やテストを見据えた構成になり得ます。
プロジェクトの構成
主要なファイルとディレクトリ:
- .github: dir
- .gitignore: file
- CLAUDE.md: file
- README.md: file
- VIBRATION.md: file
…他 4 ファイル
(注:リポジトリは小規模で、主にREADMEと振動パターンのドキュメント、Kotlinソースが含まれる構成です)
まとめ
Whoopユーザーに通知ハプティクスを提供する実験的かつ実用的なプロジェクト。
リポジトリ情報:
- 名前: whootify
- 説明: Whoop + Notify — haptic notifications on your Whoop 5
- スター数: 1
- 言語: Kotlin
- URL: https://github.com/slush-dev/whootify
- オーナー: slush-dev
- アバター: https://avatars.githubusercontent.com/u/243824500?v=4
READMEの抜粋:
Whootify
Whoop + Notify — haptic notifications on your Whoop 5.
I love my Whoop. But for years, I’ve worn a smartwatch alongside it just for one reason: silent phone notifications. Vibration on the wrist so I can keep my phone on silent, filter out the noise, and never miss what actually matters.
That always felt wrong — a smartwatch I didn’t want, just to solve a problem my Whoop almost solved. It has a vibration motor. It just won’t use it for notifications.
So I built Whootify. No…