Healthcare, Health-tech, Mobile development
Mobile App: Flutter, Dart, BLoC architecture, PowerSync (SQLite-based local DB)
Backend: ASP.NET Core, C#, Supabase (PostgreSQL), MongoDB
Cloud: Azure for data aggregation, cache, and access control
Notifications: awesome_notifications, native iOS/Android integration
Third-Party Services: Stripe for subscriptions, Signicat for digital document signing
A Norwegian digital health startup developing a cross-platform mobile solution to improve medication adherence and care coordination. The app is designed for users who manage their own medications as well as those of others—such as children, elderly relatives, or pets.
The client needed a user-friendly, compliant, and mobile-first application that would:
We delivered a comprehensive redesign of the mobile app interface, improving usability, flow logic, and navigation across core features.
Key Features includ:
To address the client’s need for a more intuitive and accessible experience, we began with a complete redesign of the mobile application using Flutter. The new interface focuses on clarity, accessibility, and ease of use—especially for users managing medications for themselves and others, such as children or elderly relatives. We restructured navigation, improved component behavior, and aligned UI design with healthcare-specific accessibility principles.
One of the core features is multi-profile support with secure sharing. Users can create dedicated medication profiles within their account and share them with trusted users (e.g., family members or caregivers), each with customized permissions. All profile changes, including medication tracking and reminders, are synchronized in real time, ensuring that each party stays informed.
User engagement was another priority. To encourage medication adherence, the app delivers smart reminders and notifications, tracks compliance, and presents usage statistics through a clear visual calendar and reporting system. The notification system supports both personal alerts and alerts related to shared profiles.
For sensitive health-related data, we implemented a digital consent flow. When sharing a profile, users are prompted to sign a data access agreement (GDPR-compliant), which is stored securely and made available for future reference if needed.
Technically, the app is built using Flutter and follows the BLoC (flutter_bloc) architecture, ensuring modularity and reactive UI updates. It adopts a local-first approach using PowerSync (built on SQLite), which enables offline work and syncs data with Supabase (PostgreSQL) when online. Notification delivery is handled via awesome_notifications, extended with native platform integrations. On iOS, we bridged Flutter with native code to support Critical Alerts. On Android, we used WorkManager, disabled battery optimizations, enabled auto-start, and built a notification recovery mechanism to ensure alerts are reliably delivered—even after device restarts.
To power the app’s business logic—especially for profile sharing, secure data handling, and subscription management—we developed a robust backend in ASP.NET Core. The backend handles access control, data sharing permissions, and GDPR document signing workflows, ensuring all shared data complies with healthcare data regulations.
The profile-sharing flow was a key business requirement that required precision and security. We designed it so that users can grant access to specific profiles, and those permissions are enforced across both the mobile UI and the backend API. These permissions also determine what type of notifications and updates shared users can receive.
To handle compliance, we integrated Signicat for digital document signing. When a user shares a profile, they are prompted to review and sign a GDPR-compliant agreement. The backend stores this document securely and allows the data owner to retrieve it at any time.
The backend is also responsible for subscription management via Stripe, along with background jobs for syncing and caching key datasets.
It supports real-time updates via PowerSync and maintains high data integrity across shared sessions.
The backend is built with ASP.NET Core and uses C#, with PostgreSQL (via Supabase) as the main data source and MongoDB for secondary structured storage. Critical flows like profile sharing, permissions logic, and document storage are handled via backend APIs and Azure, which manage heavy data aggregation and complex permission-based queries. Signed GDPR documents are encrypted and stored securely, and are linked to the appropriate profiles for future access. All backend services are hosted on Microsoft Azure, ensuring scalability and compliance.
The application now offers a complete medication management experience tailored to both individual users and caregivers. It provides secure data sharing, real-time updates, and compliance with healthcare data standards—all wrapped in a modern, responsive UI.
By integrating complex logic directly into the mobile app and leveraging a local-first architecture, the client reduced infrastructure costs, improved user engagement, and significantly accelerated feature delivery to production. The platform is now well-positioned for growth and ready to scale to meet increasing demand in the digital health sector.