Cross-Platform Health BLE App

Job ID: 40465814

Budget: $30 – $250 USD

I need a .NET MAUI application that runs smoothly on Android handsets as well as Windows and Mac desktops. The core of the job is stable Bluetooth-LE integration with four consumer health devices: a blood-pressure monitor, blood-glucose meter, thermometer and weight scale. Once a reading arrives over BLE, the app should parse it instantly, add it to a local Room (SQLite) database, mark the entry as “unsynced,” refresh the on-screen charts and update the running daily, weekly and monthly statistics.

A second thread handles background synchronisation with my cloud API; if a connection is available it should post any unsynced records, then flag them as complete. I place special emphasis on the UI that shows historical data—line charts, trend arrows, min/max and averages—so the graphing component must feel fluid on both touch and desktop form factors.

Core scope
• Build with the latest stable .NET MAUI, targeting Android, Windows and macOS from a single code-base.
• Reliable BLE pairing, scanning and reconnection logic for the four devices mentioned.
• Local persistence via Room or an equivalent cross-platform SQLite wrapper.
• Dynamic charts and statistic views reflecting new measurements in real time.
• Secure REST sync (token-based) to my server endpoint.

Stretch items such as in-app messaging, prescriptions, appointment bookings and ambulance requests are already defined on the back end; wire-up screens and basic flows so they open correctly, but polishing these modules will follow in a later phase.

Acceptance criteria
1. Live demo on all three platforms proving device connection and data capture.
2. Local database file shows raw values that match the charted figures.
3. Manual “sync now” button pushes data to the test server and returns HTTP 200.
4. Fresh builds compile with no warnings on VS 2022 and Xcode per platform.

Please factor your timeline for Bluetooth testing and UI refinement, and confirm which BLE libraries you prefer to work with before we start.