随笔感悟

Glucose Buddy (糖小助) 提供血糖数据可视化、AI 分析和智能通知的血糖管理助手~。

前情提要:6月15日确诊2型糖尿病合并高血压、急性肝损伤入院治疗。还没来得及焦虑,就被抽走了20管血做检查。丙氨酸氨基转移酶和天门冬氨酸氨基转移酶数值直接飙升至正常上限的3倍,空腹血糖10.12mmol/L,糖化血红蛋白9%。要说坏习惯,我既不抽烟也不喝酒,但夏天每天至少喝一瓶800ml的可乐——很多时候还是无糖的,却不知是哪一瓶最终成了射中我眉心的那颗子弹。全文:https://llingfei.com/683.html
为了科学便捷的管理血糖,开发了这套工具,基于nightscout和GCM(动态血糖仪)提供可视化数据和AI分析追踪的血糖管理助手~
github地址:https://github.com/flyhunterl/glucose-buddy

✨ 功能特性

📊 数据监控

🤖 AI 分析

🔔 通知系统

⚙️ 配置管理

🚀 快速开始

方式一:Docker 部署(推荐)

  1. 克隆项目

    git clone <repository-url>
    cd nightscout-web
  2. 配置config.toml
  3. 快速启动

    # 使用快速启动脚本(推荐)
    chmod +x quick-start.sh
    ./quick-start.sh
    
    # 或手动启动
    docker-compose up -d 

注意:如果遇到 Docker Compose 版本问题,请查看 故障排除指南

  1. 访问应用
  2. 打开浏览器访问:http://localhost:1338
  3. 首次访问会自动创建默认配置文件

方式二:本地部署

  1. 环境要求
  2. Python 3.9+
  3. pip
  4. 安装依赖

    pip install -r requirements.txt
  5. 启动应用

    python app.py
  6. 访问应用
  7. 打开浏览器访问:http://localhost:1338

⚙️ 配置说明

Nightscout 配置

AI 分析配置

邮件配置

定时任务配置

📱 PWA 安装

本应用支持 PWA(Progressive Web App),可以安装到桌面或移动设备:

  1. 桌面安装

    • Chrome/Edge:地址栏右侧的安装图标
    • Firefox:地址栏右侧的安装提示
  2. 移动设备安装

    • iOS Safari:分享 → 添加到主屏幕
    • Android Chrome:菜单 → 安装应用

🔧 高级配置

Docker Compose 服务

# 基础服务(推荐)
docker-compose up -d nightscout-web

# 包含 AI 服务
docker-compose up -d nightscout-web ollama

# 完整服务(包含 Nginx)
docker-compose up -d

环境变量

变量名说明默认值
FLASK_ENV运行环境production
DATABASE_PATH数据库路径/app/data/nightscout_data.db
TZ时区Asia/Shanghai

数据持久化

Docker 部署会自动创建以下持久化目录:

🛠️ 开发指南

项目结构

nightscout-web/
├── app.py                 # 主应用文件
├── config.toml           # 配置文件
├── requirements.txt      # Python 依赖
├── templates/            # HTML 模板
│   ├── base.html
│   ├── index.html
│   └── config.html
├── static/               # 静态文件
│   ├── sw.js            # Service Worker
│   ├── manifest.json    # PWA Manifest
│   └── ...
├── Dockerfile           # Docker 镜像
├── docker-compose.yml   # Docker 编排
└── README.md           # 说明文档

开发模式启动

export FLASK_ENV=development
python app.py

API 接口

接口方法说明
/api/glucose-dataGET获取血糖数据
/api/treatment-dataGET获取治疗数据
/api/analysisGET获取 AI 分析
/api/syncPOST同步数据
/api/configGET/POST配置管理
/api/test-connectionPOST测试连接
/api/test-emailPOST测试邮件

🔍 故障排除

常见问题

  1. 无法连接 Nightscout

    • 检查 API 地址是否正确
    • 确认网络连接正常
    • 验证 API 密钥(如果需要)
  2. AI 分析失败

    • 检查 AI 服务是否运行
    • 验证 API 地址和密钥
    • 确认模型名称正确
  3. 邮件发送失败

    • 检查 SMTP 配置
    • 验证认证信息
    • 确认网络连接
  4. 通知不工作

    • 检查浏览器通知权限
    • 确认 Service Worker 注册成功
    • 验证 HTTPS 连接(生产环境)

日志查看

# Docker 部署
docker-compose logs -f nightscout-web

# 本地部署
tail -f logs/app.log

🤝 贡献指南

欢迎提交 Issue 和 Pull Request!

  1. Fork 项目
  2. 创建功能分支
  3. 提交更改
  4. 推送到分支
  5. 创建 Pull Request

📄 许可证

本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情。

🙏 致谢

📞 支持

如有问题或建议,请:

  1. 查看 故障排除指南
  2. 提交 Issue
  3. 联系开发者:flynn

打赏

您的打赏能让我在下一顿的泡面里加上一根火腿肠。

English

🩺 Glucose Buddy

A web-based Nightscout glucose monitoring application with data visualization, AI analysis, and smart notifications.

✨ Features

🚀 Quick Start

  1. Clone the repository

    git clone https://github.com/flyhunterl/glucose-buddy.git
    cd glucose-buddy
  2. Configure the application

    cp config.toml.example config.toml
    # Edit config.toml with your settings
  3. Deploy with Docker

    chmod +x quick-start.sh
    ./quick-start.sh
  4. Access the application

📋 Requirements

🤝 Contributing

Contributions are welcome! Please read our Contributing Guide for details.

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.


⚠️ Disclaimer: This application is for informational purposes only and should not replace professional medical advice. Please consult with healthcare professionals for diabetes management.

本文著作权归作者 [ flynn ] 享有,未经作者书面授权,禁止转载,封面图片来源于 [ 互联网 ] ,本文仅供个人学习、研究和欣赏使用。如有异议,请联系博主及时处理。

发表留言

读者留言1

  1. 个人家庭医生👍

加载更多评论