L-GEVITY
L-GEVITY는 혈액수치·피트니스·바이오마커·스마트 알고리즘 기반 생활습관 조정으로 현재·미래 건강을 측정·향상하는 플랫폼
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기메이커가 쓴 소개는 위의 한 줄이 전부입니다. 더 자세한 내용은 저장소 README에서 읽을 수 있습니다. 저장소 README ↗
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Personal health tracker. Collects daily metrics from a wearable, stores them in Supabase, and delivers insights via Telegram:
Migrated from Oura Ring to Fitbit Air. The Fitbit Web API shut down on 2 November 2026; its replacement is the Google Health API. Collection into
fitbit_logsandfitbit_workoutsis live. The Oura side is dormant: its data is kept as history, its scheduled workflows are disabled. Scoring and alerts are paused until enough Fitbit history accumulates for personal baselines. Seeplan.mdanddocs/fitbit-migration/.
| Layer | Service |
|---|---|
| Data sources | Google Health API (active), Oura Ring API v2 (dormant) |
| Database | Supabase (PostgreSQL) |
| Bot hosting | Render.com |
| Automation | GitHub Actions |
| AI analysis | OpenAI GPT |
| Delivery | Telegram Bot API |
Oura API → GitHub Actions → Supabase (health_logs) → alert_checker.py → Telegram
Google Health API → GitHub Actions → Supabase (fitbit_logs) → send_telegram_message.py (weekly)
Telegram → Render (bot.py) → Supabase (user registration)
Browser → login.html (Telegram Widget) → Render /auth/telegram → JWT (APP_SECRET)
Browser → dashboard.js → Render /api/logs, /api/weekly → Supabase → JSON
Data is collected daily via scheduled GitHub Actions workflows. Per-user credentials — the Oura token and the Google refresh token — live in Supabase, not in code or environment files.
The dashboard authenticates users via Telegram Login Widget. The backend (Render/Flask) issues its own JWT signed with APP_SECRET and acts as a proxy to Supabase using the service_role key. The frontend never accesses Supabase directly.
Worth knowing before touching the collector:
users/me/dataSourceFamilies/google-wearables, phone step counts are mixed into the series.steps, distance, heart-rate, …) must be read via :dailyRollUp, not :list.Available at: https://demonk03.github.io/health-tracker/
/start — onboarding
/register <oura_access_token> — connect your Oura account
/status — view latest metrics
/stop — disconnect
| Workflow | Schedule | What it does |
|---|---|---|
| Update data | Daily 07:00 UTC | Fetches Oura data for all users |
| Update Fitbit data | Daily 09:00 UTC | Fetches Google Health data, refetches the last 7 days |
| Alert check | Daily 07:30 UTC | Checks for metric deviations, sends Telegram alerts |
| Weekly report | Sunday 21:00 UTC | Sends AI-generated weekly digest |
Fitbit collection runs later in the day on purpose: Google backfills overnight HRV, temperature and respiratory rate only by midday.
See docs/internal.md for the Oura side and docs/fitbit-migration/00-google-health-setup.md for Google Health.