Local-first health tools for Android

OpenVitals

A private Health Connect dashboard for viewing, logging, importing, and understanding your health data without accounts, ads, analytics, or an OpenVitals cloud.

No OpenVitals cloud account
No app-level internet permission
No ads or analytics SDK
Health Connect stays the source of truth

Built for people, not profiles

Health data should be useful without becoming someone else's dataset.

OpenVitals reads supported Health Connect records, turns them into clear daily views and detail screens, and keeps control close to the device. You decide which permissions to grant and when anything gets written.

Privacy stance

No account. No feed. No background data business.

The Android app is designed around explicit local flows. It reads Health Connect, stores app preferences on device, and writes health records only after a save, import, record, edit, or delete action.

Review the privacy details
Local by defaultNo OpenVitals server is needed for the app dashboard.
User-granted accessHealth Connect permissions stay visible and deliberate.
Open sourceThe Android app and documentation are available on Codeberg.

Wearables

Your Garmin watch, without the round trip.

OpenVitals reads a paired Garmin watch directly over Bluetooth and imports what it recorded into Health Connect. The measures Health Connect has no place for — stress, Body Battery, training load — are kept in the app instead of being dropped.

How watch sync works
Straight off the wristBluetooth to your phone. No Garmin account and no Connect app in the middle.
More than stepsSleep stages, heart rate, HRV, stress, Body Battery, training readiness and recovery.
Alarms and settings tooChange what's on the watch from the phone, including its own settings menus.

What it does

See it, import it, record it, log it, and understand it. All on the phone.

Every metric in one place

Activity, sleep, heart, body, hydration, and nutrition on one daily dashboard. Trends, statistics, and detail screens are one tap deeper when you want to know what changed.

Import what you already have

Bring in Apple Health exports, FIT, GPX, KML/KMZ, TCX, and CSV files, one at a time or whole folders. The history you built elsewhere comes with you.

Record activities and workouts

GPS routes drawn on offline maps, BLE heart-rate, cadence, and power sensors, voice announcements, laps, and rep counting. Written to Health Connect only when you save.

Connect your Garmin

Pair the watch once and sync sleep, heart rate, HRV, stress, Body Battery, steps, and workouts over Bluetooth. No Garmin account or cloud in the middle.

Log the numbers only you know

Weight, height, blood pressure, glucose, meals, drinks, and mindfulness minutes. Quick manual entry, with reminders and home-screen widgets.

Insights made on your phone

Sleep scores, Body Energy, and daily readiness are computed on-device against your own baselines. No cloud reads your data to tell you how you slept.

Product views

Designed for scanning today, then going deeper when it matters.

OpenVitals Daily Readiness detail screen
Readiness
OpenVitals activity recording screen
Recording
OpenVitals sleep tracking screen
Sleep
OpenVitals hydration entry screen
Hydration
OpenVitals showing a paired Garmin vívoactive 5
Watch

Get OpenVitals

Install OpenVitals on Android.

Choose the Android channel that fits how you update apps. OpenVitals is also available as signed releases for people who prefer direct project downloads.

Support the project

Help OpenVitals grow.

Translate the Android app for more people, or fund the ongoing development, testing, documentation, releases, and maintenance behind this free and open-source project.