A Python-based digital habit tracker and dashboard that helps you log daily habits, analyze your mood and activities, and scan your file system for organization. Visualize your progress and gain insights into your daily routines!
-
Daily Habit Logger:
Log your mood, study hours, sleep hours, entertainment hours, and topics studied. Data is saved to both a CSV file and a MySQL database. -
Visualization Dashboard:
Generate insightful charts:- Mood trend over time
- Average time spent per activity
- Correlation heatmap between mood and activities
- Study vs. mood bubble chart
- Stacked bar chart of daily time allocation
-
File & Folder Scanner:
Scan any directory to generate a CSV report of all files, including size, type, modification time, and path.
my digital life/
├── assets/ # Generated charts and plots
├── data/ # CSV logs and reports
├── utils/ # Database connection and creation scripts
├── dashboard.py # Visualization and dashboard code
├── habit_logger.py # Daily habit logger
├── system_scanner.py # File/folder scanner
├── main.py # Main menu/entry point
├── requirements.txt # Python dependencies
git clone <repo-url>
cd "my digital life"pip install -r requirements.txt- Ensure you have MySQL installed and running.
- The default connection uses:
- host:
localhost - user:
root - password:
system - database:
daily_habit_tracker
- host:
- You can change these credentials in
utils/db_connect.pyandutils/db_creation.pyif needed. - The database and table are created automatically on first run.
python main.pyYou will see a menu with the following options:
- Daily logger – Log your daily mood, study, sleep, entertainment, and topics.
- Files and Folder Scanner – Enter a folder path to scan and generate a CSV report.
- Visualization Generator – Generate and save summary charts in the
assets/folder. - Exit – Quit the application.
See requirements.txt for the full list. Key packages:
- numpy
- pandas
- matplotlib
- seaborn
- pymysql
- scipy
- cryptography
- fpdf
- CSV: All logs are appended to
data/daily_logs.csv. - MySQL: All logs are also stored in the
daily_habit_tracker.daily_logstable.
- Charts: Saved in the
assets/directory. - File scan reports: Saved as
data/logs.csv.
- Change database credentials in
utils/db_connect.pyandutils/db_creation.py. - Modify or extend logging fields in
habit_logger.pyand database schema indb_creation.py.
MIT License.