StravaやアップロードしたFIT/TCX/GPXのアクティビティファイルから、統計、チャート、ギアの使用状況を確認できるセルフホスト型のオープンソースダッシュボード。
- スター
- 153
- フォーク
- 11
- 未解決の Issue
- 2
- 最終コミット
- 3 日前
これは何?
Workout Challengeは、友人や家族、同僚とフィットネス競争を開催できるセルフホスト型Webアプリです。主催者はコンペティションを作成し、分数、セッション数、キロメートル、キロカロリー、キロジュールなどの指標を使って、1日、1週間、1か月、またはコンペティション全体の目標を設定できます。参加者は招待リンクから参加し、ワークアウトや歩数を手動で記録するか、Stravaアカウントを連携して自動インポートできます。目標達成までの進捗が1%進むごとに1ポイントを獲得でき、ワークアウト、1日、1週間ごとのポイントに任意で上限や下限を設けることで、継続を重視した競争にできます。
参加者にはワークアウト統計や連続記録を確認できる個人用ダッシュボードが用意され、コンペティションのダッシュボードでは友人のアクティビティ、ランキング、目標の進捗を確認できます。毎週月曜日にランキングメールが送信され、木曜日には任意で週次進捗メールも送信できます。Webインターフェースとメールはレスポンシブ対応で、サイトではライトモードとダークモードを利用できます。
フロントエンドにReact、バックエンドにREST APIを備えたDjangoを採用し、PostgreSQL、Redis、Celery、定期タスク用のCelery Beatを組み合わせています。単一のDockerコンテナとして実行でき、手早くローカルでテストする場合はSQLiteに切り替えることもできます。
主な機能
- 01コンペティションを作成するか、招待リンクから参加できます。
- 02分数、回数、km、kcal、kJを使い、1日、1週間、1か月、またはコンペティション全体の目標を設定できます。
- 03Stravaからワークアウトを自動インポートするか、手動で記録できます。
- 04ワークアウト、1日、1週間ごとにポイントの下限と上限を設定できます。
- 05各コンペティションでランキング、友人のアクティビティ、進捗をダッシュボードから確認できます。
- 06週次のランキングメールと進捗メールに対応し、レスポンシブレイアウトとダークモードを利用できます。
ユースケース
- 同僚と9月の歩数チャレンジを開催する会社。
- 週ごとの運動時間やワークアウト回数を競う友人グループ。
- 公開型のソーシャルフィットネスアプリではなく、非公開のセルフホスト型ランキングを使いたい家族やクラブ。
- 1日または1週間のポイントに上限を設け、継続を評価したいグループ。
クイックスタート
- 1
まずは Docker で手軽に試してみましょう
docker run -p 80:80 -e ALLOW_ALL_HOSTS=true vanalmsick/workout_challenge - 2
または、README の docker-compose.yml を使って docker compose で本番環境にデプロイできます
docker compose -f /path/to/docker-compose.yml up
使う前に知っておきたいこと
- 本番環境を完全に構築するには、PostgreSQL、Strava API の認証情報、メール送信用の SMTP 設定が必要です。
- 開発者プログラムに参加しない場合、Strava のインポートは Strava API のレート制限を受けます。
- セルフホストするには、複数の環境変数とシークレットを設定する必要があります。
収録されている特集
トピック
よくある質問
- workout_challenge とは?
- 友人や同僚とフィットネスチャレンジを開催できる、独自指標やStrava連携に対応したセルフホスト型Webアプリ。 Workout Challengeは、友人や家族、同僚とフィットネス競争を開催できるセルフホスト型Webアプリです。主催者はコンペティションを作成し、分数、セッション数、キロメートル、キロカロリー、キロジュールなどの指標を使って、1日、1週間、1か月、またはコンペティション全体の目標を設定できます。参加者は招待リンクから参加し、ワークアウトや歩数を手動で記録するか、Stravaアカウントを連携して自動インポートできます。目標達成までの進捗が1%進むごとに1ポイントを獲得でき、ワークアウト、1日、1週間ごとのポイントに任意で上限や下限を設けることで、継続を重視した競争にできます。
- workout_challenge は無料で使えますか?ライセンスは?
- workout_challenge は Other ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- workout_challenge は今もメンテナンスされていますか?
- 活発にメンテナンス中。workout_challenge の最終コミットは 2026年11月2日 です。
- workout_challenge は何に使えますか?
- 同僚と9月の歩数チャレンジを開催する会社。 週ごとの運動時間やワークアウト回数を競う友人グループ。 公開型のソーシャルフィットネスアプリではなく、非公開のセルフホスト型ランキングを使いたい家族やクラブ。 1日または1週間のポイントに上限を設け、継続を評価したいグループ。
- workout_challenge のインストール方法は?
- まずは Docker で手軽に試してみましょう: docker run -p 80:80 -e ALLOW_ALL_HOSTS=true vanalmsick/workout_challenge または、README の docker-compose.yml を使って docker compose で本番環境にデプロイできます: docker compose -f /path/to/docker-compose.yml up
- workout_challenge はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/vanalmsick/workout_challenge
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
Django製のセルフホスト可能なオープンソースのワークアウト・栄養・体重管理アプリ。REST APIとモバイルアプリも提供。
StravaやGarmin Connectとの同期、GPX/TCX/FITファイルの分析に対応したセルフホスト型フィットネス記録サービス。
ルーティンの計画、セットの記録、トレーニングデータの自前サーバー管理ができるセルフホスト型ジム・体重トラッカー。
Laravelを基盤に構築された、商品データの管理・拡充に使えるオープンソースのPIM(商品情報管理)およびDAM(デジタルアセット管理)プラットフォーム。
GPXなどのアクティビティファイルを取り込んで屋外での運動を記録できる、データを自分のサーバーに保管するセルフホスト型Webアプリ。