Skip to content

A comprehensive time and productivity management application for tracking daily tasks, monitoring focus scores, analyzing time allocation by category, and generating productivity insights with visual reports.

Notifications You must be signed in to change notification settings

debugfest/productivity-tracker

Repository files navigation

⏰ Daily Time & Productivity Tracker

Python Version

A Python CLI application for tracking tasks, time management, and productivity analysis with visual reports.

✨ Features

  • Task Management: Add, edit, delete, and search tasks
  • Time Tracking: Flexible duration input (e.g., "2h 30m", "150m", "2.5h")
  • Focus Scoring: Rate focus level (1-10) for each task
  • Categories: Organize tasks by custom categories
  • Reports & Charts: Daily/weekly summaries with matplotlib visualizations
  • Search & Filter: Find tasks by date, category, focus score, or notes
  • SQLite Database: Reliable local storage

🚀 Quick Start

Installation

# Clone the repository
git clone https://github.com/debugfest/productivity-tracker.git
cd productivity-tracker

# Create virtual environment (optional)
python -m venv venv
# Windows: venv\Scripts\activate
# macOS/Linux: source venv/bin/activate

# Install dependencies
pip install -r requirements.txt

# Run the application
python main.py

Demo

python demo.py

📖 Usage

Main Menu Options:

  • Add, edit, delete, and list tasks
  • View daily/weekly summaries
  • Generate reports and charts
  • Search and filter tasks

Adding a Task: Enter task name, category, duration (e.g., "2h 30m"), focus score (1-10), and optional notes.

Reports: Generate various charts including weekly time distribution, category breakdowns, focus trends, and productivity heatmaps.

🏗️ Project Structure

├── main.py              # CLI entry point and user interface
├── tracker.py           # Task data model and database operations
├── report.py            # Report generation and matplotlib visualizations
├── utils.py             # Utility functions, validation, and formatting
├── demo.py              # Demo script with sample data
├── requirements.txt     # Python dependencies
├── data/time_log.db     # SQLite database (auto-created)
└── reports/             # Generated reports and charts

🐛 Troubleshooting

Common Issues:

  • Database errors: Ensure write permissions in the project directory
  • Matplotlib issues: Install matplotlib[all] or run pip install -r requirements.txt
  • Import errors: Verify Python version is 3.8+

Duration Format Examples:

  • "2h 30m", "150m", "2.5h" are all valid
  • Focus score must be between 1-10
  • Task name cannot be empty

🤝 Contributing

We welcome contributions! See CONTRIBUTING.md for guidelines.

Quick Start:

  1. Fork the repository
  2. Create a feature branch
  3. Commit your changes
  4. Push and open a Pull Request

Acknowledgments: Matplotlib and SQLite


Made with ❤️ for productivity optimization ⏰📊

About

A comprehensive time and productivity management application for tracking daily tasks, monitoring focus scores, analyzing time allocation by category, and generating productivity insights with visual reports.

Topics

Resources

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages