Skip to main content

A python TUI todo app

Project description

Todol - Simple cli ToDo app

Version Python PyPI Status Build License

Demo

📚 Contents

📦 Installation

pip install todol

[!IMPORTANT] todol is a terminal application. I recommend installing it with pipx.

More Info

🚀 Usage

Run from anywhere in your terminal

todol

Additional flags

Click to expand

View all flags (for more options):

todol --help

Check the current version:

todol --version

See where todo files are saved:

todol --path

Update todol with a single command:

⚠️ Caution

This runs pipx upgrade todol under the hood.

todol --upgrade

Modify the todo list from the terminal

Click to expand Aliases work with the flags too

Add new task:

todol --add [TASK_NAME] [@TAGS (optional)]

Mark task as DONE by ID:

todol --done [TASK_ID]

Remove all tasks marked as DONE:

todol --clear

COMMAND GUIDE

Commands:
  add, a        Add new task
  done, d       Mark task done
  list, ls      Show todo list
  edit, e       Edit task
  clear, c      Clear done tasks
  order, o      Order Todos by IDs
  help, h       Show help
  reload, rld   Reload the app
  exit, q       Exit app

[!TIP]

Pro Tips:

  • You can use Tab for autocomplete.
  • Navigate the terminal efficiently: arrow keys, backspace, delete ...
  • Use custom @tags to organize tasks
  • You can execute multiple commands at once:
    • all - apply the command to all items

    • id-id – apply the command to a range of IDs

    • id1 id2 id3 – apply the command to specific IDs

examples:

done all       # marks all tasks as done
done 4-7       # marks tasks with IDs 4 through 7 as done
done 3 5 8     # marks tasks 3, 5, and 8 as done

❓ FAQ

Where are the saved todo files stored?

You can simply check it by running todol --path

todol stores its data using platformdirs.user_data_dir, which means files are written to the standard user data directory for each operating system.

Default locations

  • Linux ~/.local/share/todol/todoFiles/

  • macOS ~/Library/Application Support/todol/todoFiles/

  • Windows %APPDATA%\todol\todoFiles\

Hotkeys

Click to expand

Cursor navigation

Key Action
Ctrl‑a Move cursor to beginning of line
Ctrl‑e Move cursor to end of line
Ctrl‑f Move cursor forward (right)
Ctrl‑b Move cursor backward (left)
Alt‑f Move forward one word
Alt‑b Move backward one word
Home Go to start of line
End Go to end of line

Editing

Key Action
Ctrl‑d Delete character under cursor
Ctrl‑h / Backspace Delete character before cursor
Alt‑d Delete word forward
Ctrl‑k Kill (cut) text to end of line
Ctrl‑y Yank (paste) killed text
Ctrl‑t Transpose characters

History

Key Action
Ctrl‑p Previous history item
Ctrl‑n Next history item

Searching

Key Action
Ctrl‑r Reverse search history
Ctrl‑s Forward search history (may be intercepted by terminal flow control)

Completion & Accept

Key Action
Tab Trigger completion
Ctrl‑Space Start/advance completion
Enter Accept input

Misc

Key Action
Ctrl‑c Cancel / raise KeyboardInterrupt
Ctrl‑z Suspend (depends on shell)
Escape Escape/Meta prefix for Alt‑ combos
Arrow keys Move cursor up/down/left/right

For the full official key binding documentation, check the prompt_toolkit docs: prompt_toolkit GITHUB

❤️ Support

If this project saved you time, taught you something, or made your day a little easier, you can support its development here:

👉 Buy me a coffee via PayPal

Your support helps keep the project:

  • Actively maintained
  • Continuously improved
  • Free and open source

Thanks for being part of the community 🤝

📄 License

This project is licensed under the MIT License.
See the LICENSE file for full details.

Project details


Download files

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

Source Distribution

todol-0.3.8.tar.gz (13.1 kB view details)

Uploaded Source

Built Distribution

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

todol-0.3.8-py3-none-any.whl (14.2 kB view details)

Uploaded Python 3

File details

Details for the file todol-0.3.8.tar.gz.

File metadata

  • Download URL: todol-0.3.8.tar.gz
  • Upload date:
  • Size: 13.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for todol-0.3.8.tar.gz
Algorithm Hash digest
SHA256 f174358c16764f458b9701ce31380e01b329dcbf6668a66aa421fc8d50e6bbf6
MD5 218cc9f394b04120be5969b072778abc
BLAKE2b-256 e87ee0a3b306a9a7786edcfc073072f3c2b9fb368116901a8c2cb37246fc26fe

See more details on using hashes here.

File details

Details for the file todol-0.3.8-py3-none-any.whl.

File metadata

  • Download URL: todol-0.3.8-py3-none-any.whl
  • Upload date:
  • Size: 14.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for todol-0.3.8-py3-none-any.whl
Algorithm Hash digest
SHA256 5686d459a7602e88971b2a58a766e8b46a6b4366c8c7ef0f92ef1d56d056aefd
MD5 76e32f433b5b61fdc941b9deb2cec0b9
BLAKE2b-256 7d28191e688fd21ced6892be198bb22b3e42f12417bb0fa3e1f277bde0ddc9f4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page