👉 Live App: https://health-tracker-y82l.onrender.com
This is a full-stack health monitoring web application built with Flask and MongoDB Atlas, allowing users to log and track daily health metrics such as blood pressure, heart rate, weight, sleep, and more.
- 🧾 Daily Health Log form with date picker
- 📈 Interactive Trend Charts for 7 / 30 days using Chart.js
- 🧠 Smart Insights based on recent data (e.g. BP rising)
- 📅 Edit/Delete entries by date
- 💡 BMI Calculation with live category classification
- 🌙 Sleep Tracking (hours slept)
- 🔒 User Authentication (Register, Login, Logout)
| Layer | Tools Used |
|---|---|
| Backend | Flask (with Blueprints) |
| Database | MongoDB Atlas (Cloud NoSQL) |
| Auth | Flask-Login, WTForms |
| Frontend | HTML, CSS, Bootstrap, Chart.js, Jinja2 |
| Deployment | Render |
-
Clone the repository:
git clone https://github.com/Its-Itachi/Health-Tracker.git cd Health-Tracker -
Create a virtual environment:
python -m venv venv
-
Activate the virtual environment:
- On Windows (PowerShell):
venv\Scripts\Activate.ps1
- On macOS/Linux:
source venv/bin/activate
- On Windows (PowerShell):
-
Install dependencies:
pip install -r requirements.txt
-
Create a
.envfile in the root directory:SECRET_KEY=mysecretkey123 MONGO_URI=mongodb+srv://<username>:<password>@<cluster-url>/health_tracker_db?retryWrites=true&w=majority&appName=health-tracker -
Run the Flask app:
python run.py
-
Open your browser and visit:
http://localhost:5000
The app is deployed on Render and can be accessed live here:
https://health-tracker-y82l.onrender.com
To deploy your own version:
- Push your project to GitHub
- Create a Web Service on https://render.com
- Add the following environment variables:
SECRET_KEY= your secret keyMONGO_URI= your MongoDB Atlas connection string
- Set build and start commands:
| Setting | Value |
|---|---|
| Build Command | pip install -r requirements.txt |
| Start Command | python run.py |
Name: Jayesh Dethe
GitHub: @Its-Itachi
If you find this project helpful:
- ⭐ Star the repo on GitHub
- 🔄 Fork it to customize your own health dashboard
- 🧠 Share with peers & health communities
- MongoDB Atlas must be accessible from your network (whitelist IP or allow 0.0.0.0/0)
- Make sure
.envvariables are set correctly both locally and on Render - BMI is computed from stored height and current weight
- Chart.js dynamically shows trends for 7 or 30 days
- Only BP, HR, and weight are required; others are optional
Stay healthy & keep tracking! 💪📊