A simple web application for keeping tracking of blood glucose levels. Written in Python using the Django framework.
HTML JavaScript Python CSS Shell PHP



A simple web application for keeping track of blood glucose levels. Written in Python using the Django framework.

Main Site: https://www.glucosetracker.net


  • Simple, easy to use. Entering glucose data should be faster than finding a pen and paper and writing down the number. Fields have pre-set values where it makes sense (such as the date, time, and category based on time of day).
  • Send glucose data via email. Email it to your doctor before your visit, no more carrying log books (and you're saving trees)! Can be sent as a CSV or PDF attachment.
  • Reporting. Simple reports to see how you're doing. Highlight how many times you have lows and highs. Show averages by day and category using nice-looking charts and graphs.
  • Data filtering. Advanced filtering: filter by glucose range, date range, category, tag, and notes.
  • Tagging. An optional tag field to help further organize and make sense of your data. For example, it might be useful to add tags to a record such as: exercise, sick, insulin, fasting, etc.
  • A1C estimation. Estimate A1C based on data from the last 3 months.
  • Import data from CSV. Import existing data from other software/systems.
  • Mobile friendly. Layout adapts to screen size.

Some point in the future:

  • A simple Android app that works offline and auto-syncs with the remote database via REST calls.

Installation/Running the App

  1. Install the required libraries listed in the requirements file with pip: pip install -r requirements.txt
  2. If you just want to run a demo of the app, use the settings/localdemo.py file which uses an SQLite database and will be created automatically. Otherwise, for development, please use PostgreSQL and the settings/local.py file. Set the database settings and environment variables accordingly.
  3. Run the syncdb command: e.g. python manage.py syncdb --noinput --settings=settings.localdemo
  4. Run the South migration: e.g. python manage.py migrate --settings=settings.localdemo
  5. (Optional) Populate your database with dummy data: e.g. python manage.py load_random_glucose_data jsmith --settings=settings.localdemo (note that 'jsmith' can be changed to any username you like, the password will always be 'demo').
  6. Run the local web server: e.g. python manage.py runserver --settings=settings.localdemo

3rd-Party Apps/Libraries/Plugins

GlucoseTracker uses the following: