フィットネスアプリの作り方:ワークアウト、記録、進捗、コーチング
フィットネスアプリは、ワークアウトに従い、実際に行ったことを記録し、時間をかけて進捗を見られるようにするアプリです。中核となるのは、種目のライブラリ、トレーニングプラン、セット間で使えるほど素早い記録画面、そして履歴とグラフです。コーチング向けのアプリには、もう一つの面があります。トレーナーがプログラムを作り、会員がそれに従います。まずはスマートフォンに合ったモバイル対応のウェブアプリとして作り、記録画面はシンプルに保ち、ウェブアプリがスマートフォンやウェアラブルから何を読み取れて、何を読み取れないかを正直に伝えてください。
フィットネスアプリの種類を決める
| 種類 | 主な利用者 | 中心となる流れ |
|---|---|---|
| ワークアウトの記録アプリ | 一人でトレーニングする人 | ワークアウトを選ぶ → セットを記録 → 進捗を見る |
| プログラムアプリ | 決まったプランに従う人(12週間の筋トレプラン、ランニングプランなど) | 今日のセッション → 完了 → 次のセッションが開く |
| コーチと会員のアプリ | パーソナルトレーナーとその会員 | コーチがプランを割り当てる → 会員が記録 → コーチが確認して調整する |
| クラスやスタジオのアプリ | ジムやスタジオの会員 | スケジュールを見る → クラスを予約 → チェックイン |
最後のものは、実際には予約アプリです。ジム会員制アプリの作り方を参照してください。このガイドは最初の三つに焦点を当てます。
フィットネスアプリに必要なもの
画面
- 今日 — 今日予定されているワークアウト、または「空のワークアウトを開始」のクイック操作。
- ワークアウトの記録画面 — 各種目とそのセット。タップして重量と回数を入力し、完了したらチェックし、セット間は休憩タイマーで計ります。
- 種目ライブラリ — 名前、部位、器具、やり方、任意で動画や画像。
- プランとテンプレート — 再利用できるワークアウトと、数週間にわたるプログラム。
- 履歴 — 過去のワークアウトを日付順に。
- 進捗 — 種目ごとのグラフ(最も重いセット、推定の一回最大挙上重量、総ボリューム)。希望すれば身体測定の記録も。
- コーチ向けの画面 — 会員の一覧、プログラムの作成、会員のチェックインとコメント。
データ
- 種目 — 名前、種類(筋力、有酸素、時間、自重)、部位、器具、やり方。
- ワークアウトのテンプレート — 名前と、目標のセット数、回数、休憩を含む順序付きの種目。
- プログラム — 週と日の構成で、それぞれがテンプレートに紐づく。
- セッション — ユーザー、日付、テンプレート(ある場合)、メモ、所要時間。
- セット — セッション、種目、セット番号、重量、回数、距離や時間、RPE(主観的運動強度)、完了したかどうか。
- 身体測定 — ユーザー、日付、体重、その他の測定値。
重量は一つの単位(たとえばキログラム)で保存し、表示時に換算してください。そうすれば、単位を切り替えても履歴が壊れません。種目の種類によって必要な項目も異なります。プランクには時間が、ランニングには距離と時間が、スクワットには重量と回数が必要です。
権限
個人の記録アプリでは、人ごとにアカウントを用意し、データを完全に非公開にする必要があります。コーチングアプリでは、コーチと会員の役割が必要です。コーチは自分の会員だけを見られ、会員は自分のデータだけを見られるようにします。アドレスバーのIDを書き換えて、ある会員が別の会員のワークアウトを開けないことを必ずテストしてください。
判断とトレードオフ
ウェブアプリにするか、ネイティブアプリにするか。 ネイティブアプリは、Apple Healthを読み取ったり、バックグラウンドで動いたり、ロック画面に表示したりできます。ウェブアプリはApple Healthにまったくアクセスできませんが、どのスマートフォンでも動き、ストアの審査も不要で、プログレッシブウェブアプリとしてホーム画面に追加できます。記録アプリやコーチングアプリなら、ウェブアプリで中核の機能は十分にカバーできます。ネイティブアプリとプログレッシブウェブアプリの違いを参照してください。
ウェアラブル。 一部のウェアラブルやフィットネスのプラットフォームは、ユーザーの許可を得て接続できるWeb APIを提供しています。計画に組み込む前に、それぞれのベンダーの開発者向け規約を確認してください。ランや心拍数を手入力する簡単な機能で、最初のバージョンとしては十分です。
既製の種目ライブラリか、自作か。 一般的な百種目のリストから始めると、利用者の時間が節約できます。説明文は自分で書くか、ライセンスが許可されている出典を使ってください。他のアプリのライブラリをコピーしてはいけません。
ジムの電波。 ジムではつながりにくいことがよくあります。通信が途切れてもワークアウトの記録が続けられ、戻ったときに保存されるようにしてください。少なくとも、入力したセットが失われることだけは避けてください。
安全性とプライバシー
フィットネスアプリは医療機器ではありません。医療的なアドバイスはしないでください。また、特に健康状態がある場合は、プログラムを始める前に専門家に相談するよう、短い注意書きを入れてください。体重、身体測定、けが、健康に関するメモは個人情報です。法律によっては、健康に関する情報が特別なカテゴリーとして扱われます。既定では非公開にし、使う情報だけを集め、利用者が自分のデータをエクスポートしたり削除したりできるようにしてください。
プロンプトの例
私のパーソナルトレーニングの会員向けに、コーチングアプリを作ってください。スマートフォンを優先した設計にしてください。役割は二つ:コーチと会員です。コーチとしては、種目ライブラリ(名前、部位、器具、やり方、種類:重量、自重、時間、距離)からワークアウトのテンプレートを作り、それを複数週のプログラムにまとめ、会員に割り当てられるようにしてください。会員は今日のワークアウトを見て、各セットの重量と回数(または時間や距離)を記録し、完了したセットにチェックを入れ、セット間の休憩タイマーを開始できます。通信が途切れても、入力済みのセットが失われてはいけません。重量はキログラムで保存し、各ユーザーがキログラムかポンドかを表示用に選べるようにしてください。会員は、履歴と、種目ごとの進捗グラフ(最も重いセットと推定の一回最大挙上重量)を見られます。私は会員の一覧、会員の完了したセッション、そして任意のセッションへのコメントを見られます。各会員は自分のデータだけを見られるようにしてください。メールとパスワードでのログイン、そしてデータベースを用意してください。よく使う種目を40件、デモ用の会員を二人、投入してください。
構築の手順
- 記録画面を先に作る。 セットを入力する画面で、誰がこのアプリを使うかが決まります。大きな入力欄、数字のキーパッド、前のセットをワンタップでコピーする機能を用意してください。
- 種目ライブラリとテンプレート。 よく使う種目を入れ、種類ごとに正しい項目が表示されるかを確認します。
- 履歴と進捗グラフ。 数週間分の架空のデータでテストし、グラフが本物らしく見えるか確認します。
- アカウントと役割。 ログインを追加し、それからコーチと会員の役割を追加します。別の会員のデータを開こうとして、失敗することを確認してください。アプリにログインを追加する方法を参照してください。
- プログラム。 週と日の構成、会員がセッションを逃したときの扱い。
- インストールする。 アプリをスマートフォンのホーム画面に追加し、実際にワークアウトをしてみてください。モバイル対応のウェブアプリの作り方を参照してください。
- 三人の会員でベータテストする。 どこで迷うかを観察します。
よくある失敗
- 入力欄が小さすぎる。 人は、汗ばんだ手でセットの間に記録します。ターゲットは大きくしてください。
- すべての種目で同じ項目セットを使う。 プランク、ラン、スクワットでは、必要な項目が異なります。
- 保存時に単位を混ぜる。 保存する単位は一つにし、表示のときに換算してください。
- 通信が途切れるとセットを失う。 先に端末内に保存してください。
- ウェブアプリでApple Healthの同期を約束する。 ネイティブアプリがなければ不可能です。
- 初回のリリースで機能を詰め込みすぎる。 ソーシャルフィード、バッジ、AIが作るプランは、基本の流れが動いてからでかまいません。
- 医療のように聞こえるアドバイス。 指導は一般的な内容にとどめ、はっきりした免責事項を付けてください。
既製のフィットネスアプリが適している場合
自分のトレーニングを記録するだけなら、確立されたワークアウトアプリがすでに、大規模な種目ライブラリ、ウェアラブルとの同期、オフラインでの利用、ネイティブの通知を備えています。多くのパーソナルトレーナーも、決済、メッセージ、ブランド付きアプリを含む専用のコーチングプラットフォームを使っています。
自作が向くのは、既製のツールがあなたの方法に合わない場合です。たとえば、特定のプログラム構造、競技特有の指標、独自のルールを持つクラブやチームなどです。また、会員ごとのプラットフォーム料金がかさむ場合や、アプリに自分のブランドとデータを持たせたい場合にも向いています。このアプリを軸にトレーニングの事業を始めるなら、パーソナルトレーニングの事業の始め方を参照してください。もっと単純な毎日の記録ツールなら、習慣トラッカーアプリの作り方が良い出発点です。
Mythexで作る
Mythexはこれをウェブアプリとして作ります。チャットでアプリを説明し、ライブプレビューのスマートフォンサイズの枠で記録画面を確認し、会員がアクセスしてホーム画面に追加できる公開アドレスに公開します。アプリに必要になると、専用のPostgresデータベースを追加し、種目の画像や動画のためにファイルストレージも使えます。ログインは自分で用意するもので、認証のレシピを参照してください。会員に料金を請求するなら、決済も同様に自分で用意します。Proプランでは、Mythexはアプリを AndroidとiPhoneのアプリとしてラップできますが、その画面はウェブの画面なので、ネイティブのコードが必要なウェアラブルやApple Healthの連携は、今のところ対象外です。
よくある質問
フィットネスアプリにはどんな機能が必要ですか?
種目のライブラリ、トレーニングプランやテンプレート、重量と回数を素早く記録する機能、過去のワークアウトの履歴、進捗のグラフが必要です。コーチング向けのアプリでは、会員のアカウント、割り当てられたプログラム、チェックインを追加します。
ウェブアプリはApple Healthやスマートウォッチのデータを読み取れますか?
直接は読み取れません。Apple Healthのデータは、ネイティブのiOSアプリでしか利用できず、ウェブサイトからはアクセスできません。ウェアラブルの一部のメーカーは、ユーザーの許可を得てウェブアプリが接続できるWeb APIを提供しています。連携を約束する前に、それぞれのベンダーの開発者向けドキュメントを確認してください。
コードを書かずにフィットネスアプリを作れますか?
はい。AIアプリビルダーは、説明からワークアウトの記録、プログラム作成、コーチと会員のアプリを作れます。多くのAIビルダーはウェブアプリを作り、利用者はスマートフォンのブラウザで開き、ホーム画面に追加できます。
フィットネスアプリは健康データに関する規則に従う必要がありますか?
どこで事業を行い、何を収集するかによります。体重、けが、健康状態は、GDPRなどの法律でセンシティブな個人データとみなされることがあります。必要なものだけを収集し、既定ではプライベートに保ち、適用されるルールは専門家に確認してください。