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.10.tar.gz (8.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.10-py3-none-any.whl (7.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: took-0.0.10.tar.gz
  • Upload date:
  • Size: 8.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.10.tar.gz
Algorithm Hash digest
SHA256 45bf0d731df81df2b0d4a568ead3c4a04fa1c1b212655c81b67d359835193cab
MD5 0f5ca49d86d477b849bc5b7cc06b6fc4
BLAKE2b-256 7a115de5e838ee6600cad8463b0bc9237ab7f92ed7b9b3e7fe048fce9a888a74

See more details on using hashes here.

File details

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

File metadata

  • Download URL: took-0.0.10-py3-none-any.whl
  • Upload date:
  • Size: 7.7 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.10-py3-none-any.whl
Algorithm Hash digest
SHA256 655f0a23aa289437b5468bcb4efdfb67d032cf73a9c8e11d0891d7a8288852e6
MD5 5109d4157a5c0dd3430431ee907aab7c
BLAKE2b-256 ea770f446962faef83d659445f325622d6a596a0d70a49824d3b7713e98a563c

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