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

Uploaded Python 3

File details

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

File metadata

  • Download URL: letsdo-0.6.0.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.0.tar.gz
Algorithm Hash digest
SHA256 dc9e6d25fcc5316294c20148aa06d12d3ddc3eefeb395d7f12dac4ae8963b202
MD5 5cb562b141a5000ee03e7919cc2449d7
BLAKE2b-256 4e491d45baf2f86c2e9627de87b9c067ca6f0c173373033857e43e36cebd253c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: letsdo-0.6.0-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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 01e78aa714192a7bcae8cca4cec29f3ec9304717af39943da716f9f03cc61274
MD5 bd752e185c7e1eff08949a15de507d2d
BLAKE2b-256 db0bd10a7c775764b784fcb59ed0bba8a2f9cd77c7647efc5c13fe64cd996747

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

0.6.1

2 files

This release

0.6.0 This release

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