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.12.tar.gz (10.0 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.12-py3-none-any.whl (10.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: took-0.0.12.tar.gz
  • Upload date:
  • Size: 10.0 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.12.tar.gz
Algorithm Hash digest
SHA256 c10884a3b628f0487b5b6f84d365d444113ebb9e0477020e7b5962f67989faac
MD5 912aadda6f73972bf469e9f9e2dbe08d
BLAKE2b-256 f44a2dfdcfb6d052bdc1b6f4480a1f60907833924378e49445bfee6a9ad219cf

See more details on using hashes here.

File details

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

File metadata

  • Download URL: took-0.0.12-py3-none-any.whl
  • Upload date:
  • Size: 10.5 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.12-py3-none-any.whl
Algorithm Hash digest
SHA256 ad1b6b30aa5687f8653220a0cce6e8693a3e7532557977bdf2750e177e570710
MD5 5e368b3218267abfde4ebfc356d966f0
BLAKE2b-256 330cbf71ba0593a9c1f4fca5828e9581afff72c58d6cb1caee704ea5d269d9b2

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