Skip to content

danaelshrbiny10/Habit-Tracker

Repository files navigation

🧠 90-Day Habit Tracker for Personal Growth

Python Streamlit Pandas NumPy Scikit-learn XGBoost Pickle

This is a Streamlit web application that predicts your daily mood score (1-10) based on your personal daily habits. It uses a pretrained machine learning model to estimate mood from habit metrics such as sleep, workout, reading, meditation, water intake, screen time, and more.

🚀 Features

  • Input sliders for daily habit metrics including:
    • Sleep Hours
    • Workout Duration (minutes)
    • Reading Duration (minutes)
    • Meditation Duration (minutes)
    • Water Intake (liters)
    • Screen Time (hours)
  • Automatically fills missing features (e.g., journaling and daily expense) with default values for compatibility with the pretrained model.
  • Predicts mood score interactively on button click.
  • Clean and responsive UI powered by Streamlit.
  • Includes social links and a footer for branding.

🚀 Prerequisites

  • Python 3.7+
  • Streamlit
  • Required Python packages (listed in requirements/base.txt or install manually):
pip install streamlit numpy scikit-learn xgboost pandas

📦 Setup Instructions

  1. Clone the repository
git clone https://github.com/danaelshrbiny10/Habit-Tracker.git
cd Habit-Tracker
  1. Create virtual environment
python -m venv venv
source venv/bin/activate  # or venv\Scripts\activate on Windows
  1. Install dependencies
pip install -r requirements/base.txt
  1. Run the application
streamlit run dashboard.py

Visit http://localhost:8501/ in your browser.

📊 Dataset

The dataset used in this project is available at: 90 Day Habit Tracker for Personal Growth - Kaggle

📬 Contact

For questions or contributions, feel free to reach out at [email protected].

📝 License

This project is open-source under the MIT License.

About

pretrained machine learning model to estimate mood from habit metrics

Topics

Resources

License

Stars

Watchers

Forks

Contributors