Skip to main content

CLI tool to track time spent on tasks.

Project description

Took

Took is a command-line tool for time tracking and task management, designed to help you efficiently manage and monitor the time spent on various tasks and projects. With Took, you can start, pause, and resume tasks, view detailed reports, and manage your time more effectively. It's simple to set up and integrates seamlessly with your workflow.

Features

  • Track Time: Start tracking time for specific tasks, allowing you to keep a detailed log of how much time you spend on each task.
  • Pause and Resume: Easily pause and resume tasks, ensuring that your time logs are accurate and reflect actual working hours.
  • Task Creation: Automatically create tasks when starting time tracking for a task that doesn't exist.
  • Task Status: View the status of all tasks, including time spent and the last time they were updated.
  • Task Logs: Log time spent on tasks and store daily logs.
  • Daily Reports: Generate reports to visualize the time spent on tasks over a specified number of days.
  • Persistent Storage: All tasks and time logs are stored in a JSON file within the project directory, ensuring that your data is persistent across sessions and can be committed to the VCS.

Installation

You can install Took using pip:

pip install took

Usage

Initialize a New Project

Before using Took, initialize it in your project directory:

$ took init

This command creates a .took directory and initializes the took.json file in the current directory.

Start Tracking Time

To start tracking time for a task:

$ took start -t <task_name>

If the task doesn't already exist, it will be created automatically.

Pause Tracking Time

To pause the currently active task:

$ took pause

Resume a Paused Task

To resume tracking the paused task:

$ took start

This command will resume the most recently paused task.

View Task Status

To view the current status of all tracked tasks, including time spent and last updated time:

$ took status

View All Tracked Tasks

To see all tasks that are currently being tracked:

$ took show-all

View Task Logs

To view the time logged per day for a specific task:

$ took log -t <task_name>

Generate Daily Reports

To generate a report that shows the time spent on each task over the last n days:

$ took report -d {n_days}

╭───────────────────────╮
│ Reports (Last 3 Days) │
╰───────────────────────╯
2024-09-01
Task A: █████████████████████ 51m-7s
Task B: ███ 8m-53s
Task C: ████ 11m-7s

2024-09-02
Task A: ████████████████████ 11h-57m-47s
Task B: ██ 1h-47m-12s
Task C: ██████ 4h-10m-8s

2024-09-03
Task A: ██████ 27m-21s
Task B: █████ 20m-55s
Task C: ██████████████████ 1h-12m-47s

Contributing

We welcome contributions to Took! If you have suggestions, improvements, or bug fixes, please open an issue or submit a pull request on GitHub.

License

Took is licensed under the MIT License. See LICENSE for more details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

took-0.0.11.tar.gz (9.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

took-0.0.11-py3-none-any.whl (9.3 kB view details)

Uploaded Python 3

File details

Details for the file took-0.0.11.tar.gz.

File metadata

  • Download URL: took-0.0.11.tar.gz
  • Upload date:
  • Size: 9.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.19

File hashes

Hashes for took-0.0.11.tar.gz
Algorithm Hash digest
SHA256 34046453b4e666e0f2ede00d73668f248bc9c725aa7c56e48d9b27bba6b38166
MD5 98ef5a74c71d2aa2266741aeee498f75
BLAKE2b-256 02f1e80b78ed8cd99632a4283f3f91e1de8306ec3044ec5410c4649727e3404d

See more details on using hashes here.

File details

Details for the file took-0.0.11-py3-none-any.whl.

File metadata

  • Download URL: took-0.0.11-py3-none-any.whl
  • Upload date:
  • Size: 9.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.19

File hashes

Hashes for took-0.0.11-py3-none-any.whl
Algorithm Hash digest
SHA256 bbc0c98715358a702672ea8a744a4d2bd08d408dd5dc4da45fd71d0660a46912
MD5 2aec0c6ad732e9dfbc440fa343d52ce9
BLAKE2b-256 9f875b9816dec433ab81f3467e14f634edc7736325dd4905d9f79727cc643324

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page