Awesome Open Source
Awesome Open Source

topydo - a powerful todo.txt application

Build Status Codacy Badge PyPI version

topydo is a powerful todo list application using the todo.txt format.

It has three user interfaces:

  • Command Line Interface (CLI) - originally inspired by the todo.txt CLI by Gina Trapani.
  • Prompt mode - a convenience mode for the CLI. Launch with topydo prompt.
  • Column mode - a text based user interface (TUI) with customizable columns and vim-like bindings. Launch with topydo columns.



Feature-wise, the todo.txt format is quite limited, but can be extended using tags. topydo natively supports some of these tags to implement:

  • Due and start dates;
  • Maintain dependencies between todo items;
  • recurring todo items;

topydo also offers:

  • Fine-grained control on sorting and grouping items;
  • Customizable output;
  • Some conveniences when adding new items (e.g. adding creation date and use relative dates);
  • Additional output formats to iCalendar, JSON and Graphviz Dot;
  • Aliases for frequently used commands.
  • Text based todo identifiers, which are more stable and convenient than line-based todo identifiers.

Yet, topydo is fully todo.txt compliant. The text file can be processed by other todo.txt tools (but they may not interpret the tags properly).

The documentation on the TiddlyWiki provides more information about the features and how to use topydo.


Simply install with:

pip3 install topydo

If you wish to use column mode: install additional dependencies with:

pip3 install topydo[columns]

Similarly, for prompt mode you can install additional dependencies with:

pip3 install topydo[prompt]


CLI mode:


Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
python (55,472
hacktoberfest (4,276
linux (2,568
cli (1,839
macos (1,807
windows (1,510
open-source (798
cross-platform (708
tui (161
task (102
todo (88
bsd (53
task-manager (45
todoapp (22