Skip to content

mattyhakin/glucose_tracker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

46 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Glucose Tracker

Open in Streamlit

GitHub release GitHub license Contributions Welcome

Diabetes Tracker Web App

A simple and personal web app to track:

  • Blood glucose readings
  • HbA1c lab results
  • Diabetic supplies (e.g., insulin, test strips)

Built using Python, Streamlit, Pandas, and Matplotlib.


๐Ÿš€ Live App

Click here to view the live app!


๐Ÿ“š Table of Contents


๐Ÿ“‹ Features

  • Add new glucose readings manually
  • Add HbA1c lab results
  • Import glucose readings from CSV files
  • View graphs for glucose trends and HbA1c
  • Manage diabetic supplies inventory
  • Download and upload data easily
  • An example import_me.csv file is included in the examples/ folder.
  • You can use it to practice importing glucose readings into the app.

๐Ÿ›  Tech Stack

  • Streamlit
  • Pandas
  • Matplotlib
  • GitHub

๐Ÿ“‚ Folder Structure

glucose_tracker/
โ”œโ”€โ”€ .github/                    # GitHub configurations (contact form, issue templates)
โ”œโ”€โ”€ .streamlit/                 # Streamlit settings (favicon, title)
โ”œโ”€โ”€ pycache/                # Python cache (auto-generated)
โ”œโ”€โ”€ data/                       # Active working data (user input)
โ”‚   โ”œโ”€โ”€ glucose_readings.csv
โ”‚   โ”œโ”€โ”€ hba1c_readings.csv
โ”‚   โ””โ”€โ”€ supplies.csv
โ”œโ”€โ”€ example/                    # Example file for importing
โ”‚   โ””โ”€โ”€ import_me.csv
โ”œโ”€โ”€ templates/                  # Blank template CSVs
โ”‚   โ”œโ”€โ”€ glucose_readings_template.csv
โ”‚   โ”œโ”€โ”€ hba1c_readings_template.csv
โ”‚   โ””โ”€โ”€ supplies_template.csv
โ”œโ”€โ”€ main.py                     # CLI tool (optional legacy use)
โ”œโ”€โ”€ requirements.txt            # Python package dependencies
โ”œโ”€โ”€ reset_data.py               # Script to reset data from templates
โ”œโ”€โ”€ streamlit_app.py            # Main Streamlit frontend app
โ”œโ”€โ”€ utils.py                    # Core backend logic
โ”œโ”€โ”€ .gitignore                  # Files to exclude from Git tracking
โ”œโ”€โ”€ CHANGELOG.md                # Version-by-version changelog
โ”œโ”€โ”€ CODE_OF_CONDUCT.md          # Community standards
โ”œโ”€โ”€ CONTRIBUTING.md             # How to contribute
โ”œโ”€โ”€ LICENSE                     # Project license
โ”œโ”€โ”€ README.md                   # Project overview
โ”œโ”€โ”€ RELEASE_NOTES.md            # Detailed release version notes
โ””โ”€โ”€ SECURITY.md                 # Security guidelines and vulnerability reporting

๐Ÿ“ฅ First Setup

When first cloning or using the app:

  • The real working data is located in the data/ folder.
  • If you prefer to start fresh, copy the blank templates from the templates/ folder into the data/ folder.
  • Templates include:
    • glucose_readings_template.csv
    • hba1c_readings_template.csv
    • supplies_template.csv

โœ… This ensures the app has the correct structure even if no readings have been entered yet.


๐Ÿ‘จโ€๐Ÿ’ป About

This project was built to help manage diabetes more easily โ€” track important readings, monitor trends, and keep your supplies organized, all from one simple app.


๐Ÿ”„ Resetting Data

To reset your app's data back to a clean state (blank templates):

  1. Open your terminal inside the project folder.
  2. Run:
python reset_data.py

*Built with love using Python and Streamlit.*

 
๐Ÿ†• What's New

Version 1.2 (Current)

- TBC

Version 1.1 (Current)

- ๐ŸŽฏ Moved working data to `/data/` folder
- ๐Ÿ“‚ Added `/templates/` folder with blank CSV templates
- ๐Ÿ”„ Added `/examples/` folder with sample import files
- ๐Ÿ›  Added `reset_data.py` script to reset working data easily
- ๐Ÿš€ Improved README structure and project documentation
- ๐Ÿ–ผ๏ธ Added custom Streamlit app favicon and page title
- ๐Ÿ“ฅ Setup First Time Instructions for new users

---

 Version 1.0 (Current)

- โœ… Initial launch of Diabetes Tracker web app
- โœ… Record blood glucose readings
- โœ… Record HbA1c results
- โœ… Track diabetic supplies
- โœ… Import glucose readings via CSV
- โœ… View graphs for glucose trends and HbA1c trends
- โœ… Full deployment to Streamlit Cloud

[View full Release Notes โžก๏ธ](RELEASE_NOTES.md)

## ๐Ÿ”ฎ Future Plans and Ideas

We have lots of exciting features planned to make the Diabetes Tracker even more helpful!

- ๐Ÿ“ฅ Import HbA1c results via CSV (not just manual entry)
- ๐Ÿ“ค Export blood glucose and HbA1c graphs as images
- ๐Ÿ”’ Optional user login for better privacy
- ๐Ÿ“… Reminders and notifications for logging glucose and supplies
- ๐Ÿ“ˆ Daily, weekly, and monthly reports generation
- ๐Ÿ–ผ๏ธ Customizable dashboard themes (light/dark mode)
- ๐Ÿ“ฑ Mobile-friendly layout improvements
- ๐Ÿ“Š Add trendlines or prediction models for glucose data
- ๐ŸŒ“ Dark Mode toggle for nighttime use
- โ˜๏ธ Google Sheets or OneDrive backup integration
- ๐Ÿ“ฌ Email reminders for overdue readings
- โšก Set personal glucose targets and alerts
- ๐Ÿ“ˆ Add basic analytics (average glucose, variability trends)

*Have more ideas? Feel free to [open an Issue](https://github.com/mattyhakin/glucose_tracker/issues/new/choose) and suggest!*

## ๐Ÿ›ฃ๏ธ Roadmap

- [x] Version 1.0 - Initial Release
- [x] Version 1.1 - Features Expansion
- [ ] [Version 1.2 - In Development ๐Ÿšง](https://github.com/mattyhakin/glucose_tracker/milestone/1)

Visit the [Milestones page](https://github.com/mattyhakin/glucose_tracker/milestones) to see progress on upcoming features!

 ๐Ÿค Contributing

We welcome contributions of all kinds โ€” bug fixes, feature suggestions, ideas!  
Feel free to open an Issue or a Pull Request anytime.

If you have suggestions for improvements, ideas for new features, or find any bugs, please feel free to:

- Fork the repository
- Create a new branch (`git checkout -b feature-YourFeatureName`)
- Make your changes
- Commit your changes (`git commit -m 'Add some feature'`)
- Push to the branch (`git push origin feature-YourFeatureName`)
- Open a Pull Request


Thanks for helping make this app better! ๐ŸŽฏ

## ๐ŸŒŸ Future Ideas

- Add Dark Mode toggle for better nighttime use
- Integrate Google Sheets or OneDrive backup option
- Add email reminders for recording new readings
- Enable tracking of insulin dosages and timings
- Weekly and monthly report generation (PDF download)
- Mobile-friendly view improvements
- Set personal glucose targets and alerts
- Add basic analytics (average glucose over time, variability trends)

---

*Have more ideas? Feel free to suggest by opening an Issue!*

## ๐Ÿ›  Development Progress

We track all new features, improvements, and bug fixes on our Project Board:

โžก๏ธ [View the Glucose Tracker Development Board](https://github.com/mattyhakin/glucose_tracker/projects/1)

You can see:

- What features are planned
- What's currently in progress
- What's already completed

Stay updated and feel free to contribute!

---

## ๐Ÿ“จ Need Help or Have Ideas?

- Report a [Bug](https://github.com/mattyhakin/glucose_tracker/issues/new?template=bug_report.md)
- Suggest a [Feature](https://github.com/mattyhakin/glucose_tracker/issues/new?template=feature_request.md)
- Ask a [Question](https://github.com/mattyhakin/glucose_tracker/issues/new?template=contact_us.md)

## ๐Ÿ™ Acknowledgements

This project was made possible thanks to:

- [Streamlit](https://streamlit.io/) - for making web app development simple and powerful
- [Pandas](https://pandas.pydata.org/) - for data handling and manipulation
- [Matplotlib](https://matplotlib.org/) - for beautiful graphs and plots
- [GitHub](https://github.com/) - for hosting, version control, and collaboration tools
- [Contributor Covenant](https://www.contributor-covenant.org/) - for the Code of Conduct template
- [Shields.io](https://shields.io/) - for badges

Special thanks to the open-source community for inspiration and guidance.

---

About

Simple Streamlit app for tracking blood glucose, HbA1c, and diabetic supply inventory.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

No packages published

Languages