Maisore — カメラとメトロノームでアイソレ練習を記録するアプリ
2026-02-05

Maisore とは
Maisore(マイソレ) は、ダンサーのための アイソレーション練習記録アプリ です。アイソレーションとは、首・胸・腰など身体の各部位を独立して動かす基礎トレーニング。地味だけど上達には欠かせない練習を、フロントカメラ と メトロノーム音 と共に楽しく続けられるよう設計しました。
こだわったポイント
1. 部位ごとに記録できる6カテゴリ
アイソレ練習は部位ごとに分けて行うのが基本。Maisore では以下の6部位をボタンで選べます。
- 首
- 肩
- 腕
- 胸
- 腰
- ヒップ
部位ごとに統計を取れるので、「最近、腰のアイソレばかりやってないか?」と練習バランスを振り返れます。
2. フロントカメラを常時表示
セッション開始と同時に フロントカメラのプレビューが画面いっぱいに表示。鏡の代わりに自分の動きをリアルタイムでチェックしながら練習できます。AVFoundation で実装した本格的なライブビューです。
3. 自前合成のメトロノーム音
メトロノームは音声ファイルを使わず、sine波を直接生成 しています。
- 通常拍 — 800Hz
- 強拍(1拍目) — 1200Hz
BPM は20〜200の範囲で自由に設定可能。4ビートを4つの円のインジケータ で視覚化し、現在の拍は赤く 1.3倍に拡大して表示。音と視覚の両方で正確なタイミングが取れます。
4. 統計画面で練習量を可視化
週・月・年単位で総セッション数、平均BPM、部位別の集計、連続実施日数(ストリーク) を確認可能。ダンスのうまさは練習時間に比例することが多いので、地道な積み重ねが見える化されることはモチベーションに直結します。
開発プロセス
| 工程 | 使用ツール |
|---|---|
| 企画 | ChatGPT |
| コーディング | Claude Code (SwiftUI + SwiftData + AVFoundation) |
| 音声合成 | AVAudioEngine による sine波生成 |
データモデルは ExerciseSession(日付、部位、継続時間、BPMリスト、各セット時間、メモ)。BodyPart の enum で6種を管理し、TempoPreset でよく使うBPMを保存できます。
カメラ権限のリクエスト処理、バックグラウンド音声再生時のオーディオセッション設定など、地味に時間がかかるところを Claude Code がスピーディに整えてくれました。
振り返り
- 既存のメトロノームアプリ を組み合わせて使うより、1つの画面で完結する 方が圧倒的に練習が捗る
- ダンサー自身の自分が「ほしい」と思うものを作ると、機能の取捨選択に迷わない
- 拍の視覚化は、音が聞こえない環境(電車内など) でも練習できる隠れた価値がある
- AVFoundation と SwiftUI の連携は、AIに任せると実装が一気に進む
ダンスをやっている人、習慣の可視化が好きな人にこそ使ってほしいアプリです。