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.2.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.2-py3-none-any.whl (25.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: letsdo-0.6.2.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.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.7

File hashes

Hashes for letsdo-0.6.2.tar.gz
Algorithm Hash digest
SHA256 d8b0bf620428165fe164259151c7e72343c12306e505d6fb4e3bd2ab55be942d
MD5 df4eedb6de93adf72a3b84c23e333408
BLAKE2b-256 bbaa6d1d0c480866a08b12832ce3c64875031351777d7c41dcbb8847cd7e6334

See more details on using hashes here.

File details

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

File metadata

  • Download URL: letsdo-0.6.2-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.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.7

File hashes

Hashes for letsdo-0.6.2-py3-none-any.whl
Algorithm Hash digest
SHA256 93466843f22922f4bf1ab62460cb1fe8de7c76ffb9d5323ae6c44209bb8bc6b3
MD5 35942f029ae181998ac3c0e50e2de8f6
BLAKE2b-256 03b06ec7382201aa4702bb29fca1b3a827e1f6ae220072872f370b564b655c09

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

This release

0.6.2 This release

2 files

0.6.1

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