はじめに
日常的に筋トレをしているのですが、記録をつける際に既存のアプリに対して小さなストレスを感じていました。
そこで、自分の用途に絞ったシンプルな記録アプリを自作してみました。
この記事は、「日常のちょっとした不便は、自分で簡単なアプリを作って解決できるかもしれない」と感じている方に向けて書いています。
結論 / できたこと
今回作成したシンプルな筋トレ記録アプリです。
https://takatama-ts.github.io/training-record/
できることは非常に限られていますが、自分にとってはこれで十分でした。
Claudeを活用することで、短い時間でとりあえず動くものを形にすることができました。
背景
これまでいくつかの筋トレ記録アプリを使ってきましたが、以下のような点で少しずつ不便を感じていました。
- 広告の表示(待ち時間でやる気が削がれる、広告の質自体があまり好きではない)
- 種目の切り替えに時間がかかる
- 1セットずつしか記録できず、連続した操作が手間
- 自分がやりたい種目(ジムの特定の機材など)が選択肢にないことがある
- データのエクスポートができず、種目の組み方などを人に相談しにくい
こういった毎回の「ちょっとした手間」をなくすために、自分専用のものを作ることにしました。
要件と技術選定
まずは、自分にとって最低限必要な機能を整理しました。
要件
- 種目ごとに重量、回数を記録できる
- 種目ごとにテキストや画像のメモを残せる(マシンの設定などを記録するため)
- スマートフォンから手軽に使える
- とにかく早く完成させることを優先する
技術選定
手軽にデプロイできることを重視して、以下の構成にしました。
- フロントエンド: HTML / CSS / JavaScript
- ホスティング: GitHub Pages
手順・内容
AIを活用した開発
今回はClaudeを使ってベースとなるコードを生成しました。
要件を伝えてHTML、CSS、JavaScriptを出力してもらい、それをGitHub Pagesに配置する形です。
環境構築や複雑なフレームワークの選定を行わなかったため、すぐにブラウザ上で動作を確認できました。
削ぎ落とされたシンプルな画面
出来上がったものは、必要最低限の入力欄とボタンだけがあるシンプルなUIです。
最初はもう少し機能が必要かと思っていましたが、実際に触ってみると「記録をつけるだけなら、これでよかったんだな」という気づきがありました。既存のアプリは高機能ですが、自分の用途に対しては少しリッチすぎたのかもしれません。
今後の課題
データの永続化をどうするか
現状の構成ではデータの永続化が十分にできていません。
(現在はlocalStorageのため、デバイス間共有や、ふとした削除に弱い)
SQLiteとGitHub Pagesの相性はどうなんですかね・・・?
ただ今回はPublicリポジトリで管理しているため、個人の記録データをそこに置くのは不適切ですね。
今後の対応としては以下のいずれかを検討しています。
- Google Apps Script (GAS) などをバックエンドにして保存する
- インポート / エクスポート機能を追加する(JSONやCSVなど)
このあたりはまだどれが最適か手探りなので、少しずつ試してみようと思います。
おわりに
日常のちょっとした不満も、今ではAIを補助に使うことで手軽に自分用のツールを作って解決しやすくなりました。
機能が足りないツールでも、自分の目的に合致していれば十分に役立ちます。
「ここが少し不便だな」と思うことがあれば、さっと簡単なアプリを作ってみるのも良いかもしれません。
