Metadata-Version: 2.1
Name: ius-time
Version: 0.2.0
Summary: Time tracking CLI application written in Python
Home-page: https://github.com/mrasore98/ius-time
License: GPL-3.0-or-later
Author: Mathias Alexander
Author-email: mathias.alexander@irhythmtech.com
Requires-Python: >=3.12,<4.0
Classifier: License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Requires-Dist: heliclockter (>=1.3.0,<2.0.0)
Requires-Dist: sqlmodel (>=0.0.24,<0.0.25)
Requires-Dist: typer[all] (>=0.12.3,<0.13.0)
Requires-Dist: tzdata (>=2024.1,<2025.0)
Project-URL: Repository, https://github.com/mrasore98/ius-time
Description-Content-Type: text/markdown

[![Python application](https://github.com/mrasore98/ius-time/actions/workflows/python-app.yml/badge.svg)](https://github.com/mrasore98/ius-time/actions/workflows/python-app.yml)
[![Coverage Status](https://coveralls.io/repos/github/mrasore98/ius-time/badge.svg?branch=main)](https://coveralls.io/github/mrasore98/ius-time?branch=main)

# `ius-time`

A simple command line application for tracking time spent on tasks of various categories.

Full documentation on the command line interface is available [here](docs/CommandLineInterface.md).

# About the name

Every month at work, I had to report to the head of my department how much time
was spent working on each project. This information would be collected from each employee and compiled into
"Internal Use Software" information. 

To be honest, I'm not sure what the higher-ups do with this information, but regardless, I figured I would track
the data accurately instead of making up BS numbers at the end of the month. 

Thus, the `ius-time` CLI application was born.

*TLDR: IUS = Internal Use Software*
 
# IUS Time

**Usage**:

```console
$ ius [OPTIONS] COMMAND [ARGS]...
```

**Options**:

* `--install-completion`: Install completion for the current shell.
* `--show-completion`: Show completion for the current shell, to copy it or customize the installation.
* `--help`: Show this message and exit.

**Commands**:

* `end`: End active tasks.
* `list`: List tasks, with an optional time filter.
* `start`: Start a new task.
* `total`: Sum the amount of time spent on your tasks.

## `ius end`

End active tasks.

**Usage**:

```console
$ ius end [OPTIONS] COMMAND [ARGS]...
```

**Options**:

* `--help`: Show this message and exit.

**Commands**:

* `all`: End all active tasks.
* `last`: End the last task that was started.
* `task`: Specify the name of the task to end.

### `ius end all`

End all active tasks.

**Usage**:

```console
$ ius end all [OPTIONS]
```

**Options**:

* `--help`: Show this message and exit.

### `ius end last`

End the last task that was started.

**Usage**:

```console
$ ius end last [OPTIONS]
```

**Options**:

* `--help`: Show this message and exit.

### `ius end task`

Specify the name of the task to end.

**Usage**:

```console
$ ius end task [OPTIONS] TASK_NAME
```

**Arguments**:

* `TASK_NAME`: [required]

**Options**:

* `--help`: Show this message and exit.

## `ius list`

List tasks, with an optional time filter.

**Usage**:

```console
$ ius list [OPTIONS] COMMAND [ARGS]...
```

**Options**:

* `--help`: Show this message and exit.

**Commands**:

* `active`: List only active tasks.
* `all`: List all tasks in the database.
* `complete`: List only completed tasks.

### `ius list active`

List only active tasks.

**Usage**:

```console
$ ius list active [OPTIONS]
```

**Options**:

* `-f, --filter [day|week|month|quarter|semiannual|year|none]`: When applied, limits list output to tasks started within the filter window.  [default: month]
* `--help`: Show this message and exit.

### `ius list all`

List all tasks in the database.

**Usage**:

```console
$ ius list all [OPTIONS]
```

**Options**:

* `-f, --filter [day|week|month|quarter|semiannual|year|none]`: When applied, limits list output to tasks started within the filter window.  [default: month]
* `--help`: Show this message and exit.

### `ius list complete`

List only completed tasks.

**Usage**:

```console
$ ius list complete [OPTIONS]
```

**Options**:

* `-f, --filter [day|week|month|quarter|semiannual|year|none]`: When applied, limits list output to tasks started within the filter window.  [default: month]
* `--help`: Show this message and exit.

## `ius start`

Start a new task.

**Usage**:

```console
$ ius start [OPTIONS] TASK_NAME
```

**Arguments**:

* `TASK_NAME`: [required]

**Options**:

* `-c, --category TEXT`: [default: Misc]
* `--help`: Show this message and exit.

## `ius total`

Sum the amount of time spent on your tasks. Only calculated for completed tasks

**Usage**:

```console
$ ius total [OPTIONS]
```

**Options**:

* `-f, --filter [day|week|month|quarter|semiannual|year|none]`: When applied, limits list output to tasks started within the filter window.  [default: month]
* `-c, --category TEXT`
* `--help`: Show this message and exit.

