A plain text task list with Todo.txt
Most task managers eventually become another system to manage. Todo.txt takes the opposite approach: the entire list is an ordinary text file.
You can open it in any editor, keep it in a synced folder, process it with command-line tools, or use one of the apps built around the format. If the app disappears, the list remains readable. I like that property more than any animated checkbox.
The format stays out of the way
Each line is one task. The Todo.txt format adds structure through a few conventions:
- Put a priority such as
(A)at the beginning. - Use
xat the beginning for a completed task. - Add a creation date in
YYYY-MM-DDformat. - Prefix projects with
+and contexts with@.
For example:
(A) 2024-03-15 Finish article +blog @computer
(B) Call the dentist @phone
x 2024-03-14 Send invoice +admin
These are still normal lines of text. Search for +blog to see a project or @phone to find tasks you can do while holding a phone. No database migration required.
Where it works well
Todo.txt is a good fit if you want portability, fast keyboard input, and a format you can automate. Git can even keep a history, although I would be careful about committing private tasks to a public repository.
It is less convincing if you need shared boards, rich reminders, attachments, or complex recurring tasks. You can bolt those features on, but eventually you have recreated a task manager in shell scripts. That may be fun. It may not be productive.
I would start with a todo.txt file and the basic conventions, then add an app only when a real need appears. The main benefit is not the syntax. It is knowing that the tasks belong to you, not to whichever app currently displays them.