---
title: Explore the mobile app in the monorepo
sidebar_label: Patient mobile app
description: Find the mobile app entry point, patient screens, device integration, and persistence in rpm-example-app.
---

# Explore the patient mobile app

The mobile workspace is under `apps/mobile`. Its screen and integration structure follows the standalone [rpm-mobile-app](/example-rpm-app/mobile-app) guide, while source links here point to the monorepo copy.

| Responsibility | Source in rpm-example-app |
| --- | --- |
| Navigation, restored Patient identity, providers, and four tabs | [`apps/mobile/App.tsx`](https://github.com/Ovok-Dev/rpm-example-app/blob/dev/apps/mobile/App.tsx) |
| Home routine and measurement actions | [`apps/mobile/src/Home.tsx`](https://github.com/Ovok-Dev/rpm-example-app/blob/dev/apps/mobile/src/Home.tsx) and [`MeasurementSheet.tsx`](https://github.com/Ovok-Dev/rpm-example-app/blob/dev/apps/mobile/src/MeasurementSheet.tsx) |
| Tenant client and FHIR-backed saves | [`apps/mobile/src/ovok.ts`](https://github.com/Ovok-Dev/rpm-example-app/blob/dev/apps/mobile/src/ovok.ts) |
| Device discovery and normalized readings | [`apps/mobile/src/bluetooth.tsx`](https://github.com/Ovok-Dev/rpm-example-app/blob/dev/apps/mobile/src/bluetooth.tsx) |
| Diary model, local persistence, and retry states | [`model.ts`](https://github.com/Ovok-Dev/rpm-example-app/blob/dev/apps/mobile/src/model.ts), [`care-store.tsx`](https://github.com/Ovok-Dev/rpm-example-app/blob/dev/apps/mobile/src/care-store.tsx), and [`storage.ts`](https://github.com/Ovok-Dev/rpm-example-app/blob/dev/apps/mobile/src/storage.ts) |

The app keeps demo data separate from Patient data. It saves Patient entries locally before attempting a server write, and exposes retry state when a sync fails. Continue to [End-to-end data flow](/example-rpm-app/monorepo/data-flow) to connect this write path to practitioner review.
