Repository navigation
Feature Map
github-actions[bot] edited this page Nov 9, 2026
·
1 revision
This is the canonical map from user-facing docs to navigation routes, dashboard widgets, and implementation packages. It should be updated when a feature adds a new route, widget, or owned package.
Source-of-truth anchors:
- Routes:
Screen.kt - Metric route fan-out:
AppNavigationMetricRoutes.kt - Dashboard widgets:
DashboardWidgetId.kt - Manual entry widgets:
ManualEntryWidgetId.kt - Settings sections:
SettingsSection.kt
| Area | User docs | Routes and widgets | Implementation |
|---|---|---|---|
| Dashboard and customization | Health Connect metrics dashboard, Non Health Connect metrics dashboard, Metric detail customization |
Screen.Dashboard; dashboard widgets in DashboardWidgetId
|
features/dashboard |
| Activity metrics | Activity metrics, Statistics |
Screen.Metric; STEPS, DISTANCE, CALORIES_OUT, ACTIVE_CALORIES, FLOORS, ELEVATION, WHEELCHAIR_PUSHES
|
features/activity, data/repository/ActivityRepository.kt
|
| Activities, workouts, cardio load, and maps | Recording of activity, Activity and training plans, GPX/KML/KMZ/TCX route import, FIT files import, Offline maps support, Elevation correction, CoMaps navigation context, Bluetooth LE sensors |
Screen.Activity, Screen.ActivityDetail, Screen.ActivityEntry, Screen.ActivityEntryEdit, Screen.WorkoutPlans, Screen.WorkoutPlanBuilder, Screen.SettingsDataImport; WORKOUT, CARDIO_LOAD, WEEKLY_CARDIO_LOAD; ManualEntryWidgetId.ACTIVITY, ManualEntryWidgetId.WORKOUT_PLANS
|
features/activity, features/activity/maps, features/activity/elevation, features/workoutplans, features/manualentry/activity, features/manualentry/activity/recording, features/manualentry/activity/routeimport, features/settings
|
| Sleep, recovery, and readiness | Sleep tracking, Sleep score and recovery, Daily readiness, Body Energy |
Screen.Sleep, Screen.SleepDetail, Screen.DailyReadiness, Screen.BodyEnergyDetails, Screen.TrainingReadinessDetails, Screen.StressDetails; SLEEP, BODY_ENERGY
|
features/sleep, features/recovery, features/readiness, features/bodyenergy
|
| Heart and vitals | Heart and vitals, Manual entry of metrics |
Screen.Metric, Screen.VitalsMeasurementEntry, Screen.VitalsMeasurementEntryEdit; AVG_HEART_RATE, RESTING_HEART_RATE, HRV, BLOOD_PRESSURE, SPO2, VO2_MAX, RESPIRATORY_RATE, BODY_TEMPERATURE, BLOOD_GLUCOSE, SKIN_TEMPERATURE; vitals manual widgets |
features/heart, features/vitals, features/manualentry/vitals, data/repository/HeartRepository.kt, data/repository/VitalsRepository.kt
|
| Heart rate recovery | Heart rate recovery, Recording of activity |
HeartRecoveryDetailRoute (heart/recovery); activity detail card; heart screen surface |
domain/insights/HeartRateRecovery.kt, features/recovery, features/activity, features/manualentry/activity/recording
|
| Body metrics | Body metrics, Manual entry of metrics, Settings and preferences |
Screen.Metric, Screen.BodyMeasurementEntry, Screen.BodyMeasurementEntryEdit, Screen.SettingsBodyProfile; WEIGHT, HEIGHT, BMI, FFMI, BODY_FAT, LEAN_MASS, BMR, BONE_MASS, BODY_WATER_MASS; ManualEntryWidgetId.WEIGHT, HEIGHT, BODY_FAT
|
features/body, features/manualentry/body, data/repository/BodyRepository.kt
|
| Hydration, beverages, and caffeine | Hydration, Beverage logging and caffeine, Reminders, Preloaded beverage nutrition reference |
Screen.HydrationEntry, Screen.HydrationEntryEdit, Screen.HydrationEntryLogDrink, Screen.Metric; HYDRATION, CAFFEINE; ManualEntryWidgetId.HYDRATION; hydration settings and Nutrition settings for caffeine preferences |
features/hydration, features/hydration/reminders, features/caffeine, features/manualentry/hydration, data/repository/HydrationRepository.kt, data/repository/NutritionRepository.kt
|
| Nutrition | Nutrition, Food logging, Manual entry of metrics |
Screen.Nutrition, Screen.NutritionEntry, Screen.FoodEntry, Screen.Metric; CALORIES_IN, PROTEIN, CARBS, FAT; ManualEntryWidgetId.FOOD, ManualEntryWidgetId.NUTRITION; settings section NUTRITION
|
features/nutrition, features/manualentry/nutrition, features/manualentry/food, data/local/food, data/repository/NutritionRepository.kt, data/repository/FoodRepository.kt
|
| Mindfulness | Mindfulness, Reminders, Manual entry of metrics |
Screen.MindfulnessEntry, Screen.MindfulnessEntryEdit, Screen.Metric; MINDFULNESS; ManualEntryWidgetId.MINDFULNESS; mindfulness reminder settings |
features/mindfulness, features/mindfulness/reminders, features/manualentry/mindfulness, data/repository/MindfulnessRepository.kt
|
| Cycle tracking | Cycle tracking, Reminders, Onboarding and permissions |
Screen.Metric; Screen.CycleEntry; Screen.SettingsCycle; CYCLE; cycle permission category in Health Connect settings |
features/cycle, features/manualentry/cycle, domain/cycle, data/repository/CycleRepository.kt, data/local/cycle
|
| Phone-to-phone sync | Sync with another phone |
Screen.SettingsDeviceSync; settings section DEVICE_SYNC
|
features/devicesync, features/devicesync/bluetooth, features/devicesync/protocol, features/devicesync/store
|
| CSV import | CSV import, Body metrics, Heart and vitals, Activity metrics |
Screen.SettingsDataImport, Screen.SettingsCsvImport; settings section DATA_IMPORT
|
features/imports/csv, features/settings
|
| Health report export | Health report export |
Screen.SettingsDataImport, Screen.SettingsReportExport; settings section DATA_IMPORT
|
features/reports, data/repository/report, domain/report
|
| Medical records | Medical records, Apple Health import, Permissions |
Screen.MedicalRecords, Screen.MedicalRecordCategory, Screen.MedicalRecordDetail, Screen.MedicalSources, Screen.MedicalDocuments, Screen.MedicalRecordEntry, Screen.SettingsMedicalImport; MEDICAL_RECORDS
|
features/medical, features/imports/medical, domain/medical, healthconnect/MedicalRecords*, data/repository/MedicalRecordsRepositoryImpl.kt, data/repository/MedicalDocumentsRepositoryImpl.kt, data/local/medical
|
| App experience | Onboarding and permissions, Settings and preferences, Home screen widgets, Achievements, Apple Health import, Privacy, support, and diagnostics |
Screen.Onboarding, Screen.Settings, settings subsection routes, Screen.Achievements; settings sections DISPLAY, ACTIVITIES, SENSORS, NUTRITION, BODY_PROFILE, RECOVERY, DATA_IMPORT, DEVICE_SYNC, HEALTH_CONNECT, DEBUG_DIAGNOSTICS
|
features/onboarding, features/settings, features/homewidgets, features/achievements, features/imports/applehealth, healthconnect, navigation
|
-
Screen.Metricis a generic route, but the rendered detail screen is feature-owned and selected byDashboardWidgetId. - Manual entry routes write explicit user-entered records to Health Connect. Dashboard and metric detail routes are read-oriented unless they open an explicit add/edit flow.
- Proposal pages live under Proposals so current feature docs stay focused on implemented behavior.
Generated from docs/features/feature-map.md. Edit it there; changes made here are overwritten.
This wiki mirrors the Markdown in Hale-MTU/OpenVitals on every push to main.
Features
- Features
- Achievements
- Activity And Training Plans
- Activity Metrics
- Apple Health Import
- Beverage Logging And Caffeine
- Bluetooth LE Sensors
- Body Energy
- Body Metrics
- CoMaps Navigation Context
- CSV Import
- Cycle Tracking
- Daily Readiness
- Elevation Correction
- Feature Map
- FIT Files Import
- Food Logging
- GPX/KML/KMZ/TCX Route Import
- Health Connect Metrics Dashboard
- Health Report Export
- Heart And Vitals
- Heart Rate Recovery
- Home Screen Widgets
- Hydration
- Manual Entry Of Metrics
- Medical Records
- Metric Detail Customization
- Mindfulness
- Non Health Connect Metrics Dashboard
- Nutrition
- Offline Maps Support
- Onboarding And Permissions
- Preloaded Beverage Nutrition Reference
- Privacy, Support, And Diagnostics
- Recording Of Activity
- Reminders
- Settings And Preferences
- Sleep Score And Recovery
- Sleep Tracking
- Statistics
- Sync With Another Phone
How-to
App
- App Guide
- FAQ
- Getting Started
- Health Connect
- Install
- Local And Connected Editions
- Permissions
- Privacy
- Screenshots
- Support
Reference
- Design Reference
- Reference
- Design Guidelines for Offline & Sync
- OpenVitals UI Notes
- Reference: Data Capture
- Reference: Data Display
- Reference: Health Connect Matchmaking
- Reference: Health Connect Onboarding
- Reference: Health Connect Permissions
- Reference: Health Connect UX
- Reference: Promoting Health Connect
Engineering
- Code Analysis
- Engineering
- Flutter ↔ Kotlin test-parity matrix
- apple-health-import
- Architecture
- body-cycle-recovery
- Design system conformance
- Development
- Feature Playbook
- Flutter -> Kotlin test parity: domain/data/core/contract/state/navigation/di/bootstrap/l10n/widget_test
- Flutter → Kotlin test-parity matrix: features section
- Flutter → Kotlin test-parity matrix: ui / goldens / integration / fixtures
- Flutter-to-Kotlin test-parity matrix — dashboard + devicesync
- manual-entry
- Translations
Proposals
- Proposals
- Activity Start Flow Analysis
- Activity Start Flow Simplification Proposals
- Caffeine Detail And Future Sleep Insights
- Cycle Tracking: Design and Status
- Medical Records Through Health Connect
- Medical Records: What Is Left
Releases
- OpenVitals 2.16.0
- OpenVitals 2.15.2
- OpenVitals 2.15.1
- OpenVitals 2.15.0
- OpenVitals 2.14.5
- OpenVitals 2.14.4
- OpenVitals 2.14.3
- OpenVitals 2.14.2
- OpenVitals 2.14.1
- OpenVitals 2.14.0
- OpenVitals 2.13.0
- OpenVitals 2.12.0
- OpenVitals 2.11.2
- OpenVitals 2.11.1
- OpenVitals 2.11.0
- OpenVitals 2.10.1
- OpenVitals 2.10.0
- OpenVitals 2.9.1
- OpenVitals 2.9.0
- OpenVitals 2.8.0
- OpenVitals 2.7.3
- OpenVitals 2.7.2
- OpenVitals 2.7.1
- OpenVitals 2.7.0
- OpenVitals 2.6.6
- OpenVitals 2.6.5
- OpenVitals 2.6.4
- OpenVitals 2.6.3
- OpenVitals 2.6.2
- OpenVitals 2.6.1
- OpenVitals 2.6.0
- OpenVitals 2.5.0
- OpenVitals 2.4.1
- OpenVitals 2.4.0
- OpenVitals 2.3.2
- OpenVitals 2.3.1
- OpenVitals 2.3.0
- OpenVitals 2.2.8
- OpenVitals 2.2.7
- OpenVitals 2.2.6
- OpenVitals 2.2.5
- OpenVitals 2.2.4
- OpenVitals 2.2.3
- OpenVitals 2.2.2
- OpenVitals 2.2.1
- OpenVitals 2.2.0
- OpenVitals 2.1.0
- OpenVitals 2.0.4
- OpenVitals 2.0.3
- OpenVitals 2.0.2
- OpenVitals 2.0.1
- OpenVitals 1.9.0
- OpenVitals 1.8.0
- OpenVitals 1.7.7
- OpenVitals 1.7.6
- OpenVitals 1.7.5
- OpenVitals 1.7.4
- OpenVitals 1.7.3
- OpenVitals 1.7.2
- OpenVitals 1.7.1
- OpenVitals 1.7.0
- OpenVitals 1.6.3
- OpenVitals 1.6.2
- OpenVitals 1.6.1
- OpenVitals 1.6.0
- OpenVitals 1.5.1
- OpenVitals 1.5.0
Project