Master project, Alexis Schaffer
The Master Thesis paper is available here: Development of a diabetes supply management app for people with diabetes type 1 using insulin pumps and glucose monitoring sensors
This thesis presents the development of a cross-platform application designed to improve the management of diabetes-related supplies using the Flutter framework. The app enables users to track their inventory of insulin, infusion sets, sensors, insulin pumps and other essential supplies and calculates needed quantities of supplies for trips of user-defined lengths. As effective supply management is critical for individuals with Type 1 Diabetes (T1D), who rely on insulin pumps and continuous glucose monitoring (CGM) systems.
A key focus of this project is the integration of modern software engineering practices, including the implementation of a Continuous Integration and Continuous Deployment (CI/CD) pipeline to automate building and releasing the application across platforms (Android, iOS, Windows, Linux, macOS and Web). Comparative analysis with existing medication management solutions is also conducted to highlight the app’s unique value propositions in terms of functionality and platform support.
The development process emphasizes on user-centered design principles, with feedback gathered from individuals living with T1D in order to further improve the apps development. The result is a cross-platform and user-friendly tool that addresses small yet crucial aspectsof diabetes self-management. This thesis contributes to the growing field of digital health by demonstrating how cross-platform technologies and CI/CD workflows can be leveraged to rapidly deliver cross-platform, patient-centric applications.
- Keep track of stock of different supplies:
- Consumables: Consumables are supplies that are used once and are immediately discarded after use. In the context of T1D those supplies would be blood test strips, injection needles, finger lancets, alcohol swabs, and other similar supplies.
- Disposable devices: Disposable devices are supplies that are applied when used and only discarded after multiple days; those supplies would be: insulin patch pumps, such as the Omnipod by Insulet, glucose monitoring sensors, catheters, and other similar devices.
- Insulin: this supply type is used for the different types of insulins used by individuals with T1D. This supply type could also be called an injectable solution, but in the specific context of T1D insulin would be the only injectable solution used.
- Vacation calculator: The vacation calculator is a feature alongside the management of supplies, which only reads information about supplies added to the application and does not modify them. This tool allows the user to select a time range for a vacation or any time frame for which supplies need to be prepared. After choosing a start and end date, the number of selected days and a list with all supplies saved in the database is displayed. Each supply is displayed with its name and icon and the number of supplies that are required for the duration of the vacation. Disposable devices are rounded to the next full number, and along with the number of devices, the user can see the number of additional days the amount of this supply will last compared to the number of vacation days.
The app is available for all platforms supported by Flutter.
The download link for the latest version can be found in the Github releases: github.com/alexisschaffer/DiamedManager/releases/latest
A web version is also available under app.diamedmanager.com.
- Install Flutter: docs.flutter.dev/get-started/install
- Run
git clone https://github.com/alexisschaffer/DiamedManager.gitto clone the repository - Run
cd DiamedManagerto move inside the created folder - Run
flutter pub getto get all required packages - Run
dart run build_runner buildto generate required code - Run
flutter run --web-header=Cross-Origin-Opener-Policy=same-origin --web-header=Cross-Origin-Embedder-Policy=require-corpto start the app in the web browser with the corect http headers (see: drift.simonbinder.eu/platforms/web/#additional-headers )





