tasklog

Crates.iotasklog
lib.rstasklog
version
sourcesrc
created_at2024-07-14 16:03:45.156039
updated_at2024-07-15 15:26:51.463423
descriptionA command-line task tracking tool.
homepage
repositoryhttps://github.com/lucasmdjl/tasklog
max_upload_size
id1303110
size0
(lucasmdjl)

documentation

README

Tasklog

Tasklog is a simple CLI-based task management tool written in Rust. It allows you to start, stop, switch between tasks, and generate reports of your tasks. This tool is useful for tracking time spent on various tasks throughout the day.

Features

  • Start a Task: Begin a new task or resume an existing one.
  • Stop a Task: Stop the current running task.
  • Switch Tasks: Switch from the current task to a new or different one.
  • Generate Reports: Generate a report of tasks worked on for a specific day.
  • Get the Current Task: Print the task currently running, if any.

Installation

To use Task Tracker, you need to have Rust installed on your system. If you don't have Rust installed, you can get it from here.

Clone the repository and build the project using Cargo:

cargo install tasklog

The executable will be located in the target/release directory.

Usage

Start a new Task

To start a new task:

tasklog start <TASK_NAME>

Stop a Task

To stop the current task:

tasklog stop

If you want to stop a running task from a previous day you can do instead

tasklog stop -n=<DAYS_AGO> -d=<MINUTES>

specifying for how many minutes the task should have been running.

Resume a Task

To resume a stopped task:

tasklog resume <TASK_NAME>

If <TASK_NAME> is omitted, the last stopped task will be resumed.

Switch Tasks

To switch to a different task:

tasklog switch <TASK_NAME>

This will stop the current task and resume the task <TASK_NAME>. If the --create flag is set, it will create the task <TASK_NAME> instead of resuming it.

Generate a Report

To generate a report of tasks worked on today or a specific day:

tasklog report -n=<DAYS_AGO>

<DAYS_AGO> is the number of days between today and the day to report. For example, -n=0 for today, -n=1 for yesterday, and so on. If n is not specified, the report will be of today.

Get Current Task

To get the task currently running:

tasklog current

Examples

Start a new task named coding:

tasklog start coding

Stop the current task:

tasklog stop

Switch to a new task named meeting:

tasklog switch -c meeting

Generate a report for today:

tasklog report

Generate a report for yesterday:

tasklog report -n=1

Contributing

Contributions are welcome! Feel free to open an issue or submit a pull request on GitHub.

License

This project is licensed under the GPL-v3.0 License. See the LICENSE file for details.

Commit count: 0

cargo fmt