A GTK-4 application for viewing Dexcom CGM data from the pydexcom API.
DexViewer is an application that allows you to visualise and track your blood glucose data from your Dexcom continuous glucose monitoring (CGM) device. Here are some of the key features:
DexViewer provides periodic glucose data directly from your Dexcom CGM device, helping you stay informed about your current blood glucose levels and trends.
- View your blood glucose data with a user-friendly interface (alike the Dexcom app).
- Analyse trends in your glucose levels over various time scales (1 hour, 3 hours, 6 hours, 12 hours)
- Stores your Dexcom credentials for seamless access to your blood glucose data.
You can install DexViewer by simply installing the PyPI package:
pip install dexviewer
and run it from the terminal:
dexviewer
See the pip page here: https://pypi.org/project/dexviewer/
git clone https://github.com/Narmis-E/DexViewer/ && cd DexViewer
then pip install in the current directory:
pip install .
If you want to run Dexviewer from a GUI (GNOME app menu, rofi, etc) run the setup_dexviewer.sh
script which is provided in your local $PATH on install:
sudo setup_dexviewer.py
sudo needed to copy .desktop and icon to /usr/share/
As far as I am aware, DexViewer should be able to provide data through the pydexcom api for sensors which have the Dexcom Share functionality, which are the G4, G5, G6 (as listed on the pydexcom github) and G7 (maybe?). Currently I only have access to a G6 sensor so I cannot confirm functionality for the other sensors.
If you want to learn more about the pydexcom api, please read through the informative documentation provided by gagebene here.
Special thanks to:
- gagebene for creating the pydexcom api
- Taiko2k for creating their Python GTK4 tutorial
DexViewer is licensed under GPLv3, allowing the wider community to contribute and improve the application. Feel free to contribute, report issues, or provide feedback to help make DexViewer even better.
Just as an FYI, I'm not trying to act like a you know who dev and preach 10 billion reasons as to why you shouldn't use GTK themes. I am an avid desktop ricer and have/do use countless themes, especially as I want a cohesive desktop experience. But for the sake of making sure you have a positive experience with DexViewer, I highly suggest that you do not use a GTK4 theme for your desktop while using DexViewer (GTK3 themes are fine). I cannot guarrantee the application will look or even function the same from desktop to desktop because of this, especially being a programming noob.
I realise that for most users, this probably wont be a problem as they may not have a gtk4 theme set in ~/.config/gtk-4.0
,
but I will still fly the 'pls dont theme' badge to let people know it will and does effect the look of the program
(embedding a matplotlib canvas with a white background does not mix well with many GTK themes!).
- Implement unit swicthing between mmol/l and mg/dl
- Light and dark mode toggle in preferences window
- Decrease data load times?
- Implement account switching
- Implement real time data
- Package for flatpak
- NightScout integration?
- Interactive graphs (may need to switch graphing lib)
DexViewer currently stores your Dexcom SHARE password in plaintext inside the config.ini file, which I understand is something which is perhaps the epitome of bad security, but I don't plan on changing this unless I really need to (I know I could use some hashing library and then retrieve it when needed).