Skip to main content
[![Snap Status](https://build.snapcraft.io/badge/clobrano/letsdo.svg)](https://build.snapcraft.io/user/clobrano/letsdo)
[![PyPI version](https://badge.fury.io/py/letsdo.svg)](https://badge.fury.io/py/letsdo)
[![Build Status](https://travis-ci.org/clobrano/letsdo.svg?branch=master)](https://travis-ci.org/clobrano/letsdo)
# Letsdo, the CLI time-tracker

Letsdo helps you to be more focused and productive, tracking your TODO and the time you spend working on them.

# Features

Have a look at the **help** message:

```
$ letsdo
Usage:
lets see [todo|all|today|yesterday] [--detailed|--day-by-day] [--ascii] [<pattern>] [--no-color]
lets do [--time=<time>] [<name>...] [--no-color]
lets stop [--time=<time>] [--no-color]
lets goto [<newtask>...] [--no-color]
lets cancel [--no-color]
lets edit
lets config data.directory <fullpath>
lets config todo.file <fullpath>
lets config todo.start <tag>
lets config todo.stop <tag>
lets config autocomplete
```

First of all, we do not want to waste time typing too much. **Letsdo is the name of the package** and you can use it as well **as command line interface**, but all the interface is designed to be as informal as possible, so **you are encouraged to use lets instead**. Said that, when you do not know what to do, just write **lets see**, this command shows the current status of your task, whether you're doing something or not

```
$ lets see
```

When you're ready to start with something just type **lets do** followed by a short description. **Contexts**, and **Projects** are supported in form of words starting with **@** sign, or **+** sign respectively. With this configuration there isn't much difference between contexts and projects and other words, but if you're keen to install another package named **Raffaello**, we can then enable **colors**

```
$ pip install raffaello
$ export LETSDO_COLOR=1
$ lets see
```

You can **edit** the current task's name or starting time, **cancel** it or **stop** it. Once stopped, the task is saved in your **history**, that by default is located under your HOME directory in a file called 'letsdo-data'.

Don't you like the default location, let's have a look at the **config** sub-command:

- **data.directory** is the preferred location for both history and current task's data. You can share your work using a file sharing service.

e.g.

```
$ lets config data.directory ~/Dropbox
```

Let's see now the history: you can rapidly have a look at **today** and **yesterday** work done by typing:

```
$ lets see today
$ lets see yesterday
```

If you want to see the work done in another date, just write the date:

```
lets see 2017-07-13
```

a partial date will do as well, just keep the same order: Year first, then Month and Day

```
lets see 17-07-13
```

you can even use only '07-13' if you have not yet tracked data in different years.

The same way, you can look at all the work done in a particular month:

e.g in July 2017

```
lets see 17-07
```

or **all** your tasks:

```
lets see all
```

or again, a specific project or all the tasks that share a pattern:

```
lets see +letsdo
```

As you can see, tasks are reported along with an ID. That's because I'm not happy with typing too much.
To start again an older task, use the ID:

```
lets do 10
```

or if you just one to start again the **last** task you stopped

```
lets do last
```

Do you switch often among tasks? Do not need to stop and start again, just **goto** using description or ID again:

```
lets goto new project
lets goto 3
```

Finally, you can configure **autocompletion** to let Letsdo suggest your flags, contexts and projects' names, type **lets config autocomplete** and follow the instructions.

# Advanced usage

Well, not that advanced. Everybody has a todo list, so letsdo can read it

```
lets config todo.file ~/todo.txt
lets see todo
```

If you have different stuff in your todo.txt file, just provide an header to the list and configure letsdo to look for it

```
lets config todo.start todos
lets see todo
```

if you don't provide a todo.stop, Letsdo will stop reading at the first blank line.

# Licence
Letsdo is release under the [MIT](https://opensource.org/licenses/MIT) license. See LICENSE file for more details.


# Contributions
I am really happy to consider any PR that can make Letsdo better.


Download files

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

Source Distribution

letsdo-0.6.1.tar.gz (14.3 kB view details)

Uploaded Source

Built Distribution

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

letsdo-0.6.1-py3-none-any.whl (25.7 kB view details)

Uploaded Python 3

File details

Details for the file letsdo-0.6.1.tar.gz.

File metadata

  • Download URL: letsdo-0.6.1.tar.gz
  • Upload date:
  • Size: 14.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.18.4 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.7

File hashes

Hashes for letsdo-0.6.1.tar.gz
Algorithm Hash digest
SHA256 bcf49a45ef35e0a631c5794e52d6a38ce8e660adde0c1da2bd214d4555204edc
MD5 99f04e60f1fcc3bbe81597e7c4f6a691
BLAKE2b-256 5f52107217dc43466957889267e865d89f2e58a07263b7d9043bb79282186d07

See more details on using hashes here.

File details

Details for the file letsdo-0.6.1-py3-none-any.whl.

File metadata

  • Download URL: letsdo-0.6.1-py3-none-any.whl
  • Upload date:
  • Size: 25.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.18.4 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.7

File hashes

Hashes for letsdo-0.6.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f5072f142aa5c4b129edf7a1e94eeac017710ee8722ffe5f6e200624a31e1769
MD5 aa2dfbc3dad1d7979dac176bedf297a5
BLAKE2b-256 e315a3c267a6f390b8263632625ae928465f4886c16d211a31ab709cbf55dad3

See more details on using hashes here.

Release history Release notifications | RSS feed

2.1.0

2 files

2.0.2

2 files

2.0.1

2 files

2.0.0

2 files

0.7.4

2 files

0.7.1

2 files

0.7.0

2 files

0.6.2

2 files

This release

0.6.1 This release

2 files

0.6.0

2 files

0.3.4

1 file

0.3.3

1 file

0.3.2

1 file

0.3.1

1 file

0.3.0

1 file

0.2.2

1 file

0.1.0

1 file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page