跳到正文
发现
SparkyFitness:自托管家庭健康追踪平台
网站 / Web 应用生活服务

SparkyFitness:自托管家庭健康追踪平台

自托管的家庭健康追踪平台,统一记录饮食、运动、饮水、睡眠与身体数据。

admin
发布于 2026-10-28 · 更新于 2026-10-31
浏览
4
访问
0
下载
0
版本
v1.11.0
该作品还没有经过官方审核。访问演示、下载或复制命令前,请自行确认来源可信。

详细介绍

项目简介

SparkyFitness 是一个自托管、注重隐私的健康与健身追踪平台,定位为 MyFitnessPal、Flo、Hevy 等服务的替代方案。它由后端服务(API + 数据存储)、Web 前端、iOS / Android 原生应用,以及 Apple Watch 和 Wear OS 配套应用组成,所有健康数据都存放在你自己控制的服务器上,不依赖第三方服务。

项目使用 TypeScript 编写,面向希望把全家人的饮食、运动、睡眠、用药等记录集中管理,同时又不愿把数据交给商业 App 的用户。

主要功能

  • 多维度记录:营养、运动、饮水、睡眠、断食、情绪和身体围度测量
  • 目标与打卡:设定健康目标并进行每日打卡
  • 手表应用:Apple Watch 与 Wear OS 应用支持目标、饮水、体重、断食、用药、训练及表盘复杂功能
  • 报表图表:交互式图表与长期趋势报告
  • 家庭共享:多用户档案与家庭访问权限
  • 界面外观:浅色与深色主题
  • 安全认证:支持 OIDC、TOTP、Passkey、MFA 等登录方式
  • 数据导入导出:CSV 导入与免费数据导出
  • 健康平台同步:可对接 Apple Health、Google Health Connect、Fitbit、Garmin Connect、Withings、Polar Flow、Oura、Hevy、Strava、COROS、Intervals.ICU 等平台,自动同步步数、训练、睡眠、体重等数据
  • 食物数据库:接入 OpenFoodFacts、USDA、Fatsecret、Nutritionix、Mealie、Tandoor、Swiss Food Database 等来源
  • SparkyAI(Beta):对话式记录饮食、运动、身体数据和步数,可上传食物图片自动记录,并保留对话历史以便追问

安装与使用

推荐使用 Docker Compose 自托管部署:

mkdir sparkyfitness && cd sparkyfitness
curl -L -o docker-compose.yml https://raw.githubusercontent.com/CodeWithCJ/SparkyFitness/main/docker/docker-compose.prod.yml
curl -L -o .env https://raw.githubusercontent.com/CodeWithCJ/SparkyFitness/main/docker/.env.simple.example
docker compose pull && docker compose up -d

启动后访问 http://localhost:3004 即可使用。

配置文件中的占位符必须替换,否则服务会拒绝启动,包括 SPARKY_FITNESS_DB_PASSWORD、SPARKY_FITNESS_API_ENCRYPTION_KEY、BETTER_AUTH_SECRET 和 SPARKY_FITNESS_FRONTEND_URL。密钥可用 openssl rand -hex 32、openssl rand -base64 32 生成;也可以在浏览器中使用官方提供的 .env 生成器 一键生成。

如果需要反向代理、SSO、SMTP 或外部数据库等完整配置,可参考 .env.example 与 文档站。

非技术用户也可以选择第三方托管服务(如 PikaPods、Zenith),这些属于独立第三方平台。

注意事项

  • SparkyFitness 属于 source-available 而非开源项目,许可证为非商业用途,商业使用需获得授权。
  • SparkyAI 等 AI 功能目前处于 Beta 阶段。
  • 升级前请务必备份数据库与环境配置。
  • 睡眠分期、HRV、血糖等指标由手表、手机或测量设备导入,SparkyFitness 负责存储、分析和绘图,本身不做测量。
  • 部分集成(如 Yazio)使用非官方 API,稳定性由第三方决定。

本作品整理自 GitHub 开源项目 CodeWithCJ/SparkyFitness,原作者 @CodeWithCJ。中文介绍由 AI 根据项目 README 整理,以原仓库为准。

更新记录

  1. v1.11.0当前版本

    修复自适应热量预算中活动热量与可选 BMR 被重复计入的问题,升级后剩余热量可能变低;已记录的活动仍会显示,手动目标保持原有回补逻辑。

  2. v1.10.0

    修复自适应热量预算:Dynamic Goal 与 Percentage Earn-Back 不再把活动热量或可选 BMR 额度重复计入自适应目标,升级后剩余热量可能变低。建议使用 TestFlight 版本获取最新 App。

  3. v1.9.0

    修复自适应热量预算重复计入活动热量与 BMR 的问题;移动端新增补充剂条码扫描、热量/饮水/断食/饮食锁屏小组件与控制、训练热身组生成器和心情打卡。

评论