cli-todo

Crates.iocli-todo
lib.rscli-todo
version0.6.0
created_at2024-03-17 06:10:47.52583+00
updated_at2025-12-31 12:06:50.798249+00
descriptionA TODO app for your terminal
homepage
repositoryhttps://github.com/MDSADABWASIM/cli-todo
max_upload_size
id1176250
size34,294
Md Sadab Wasim (MDSADABWASIM)

documentation

README

cli-todo

A blazingly fast Rust TUI todo app with Vim keybindings for terminal purists. An experimental playground for Immediate Mode rendering—where every keystroke triggers a full UI rebuild, no state diffing required.

Installation

From crates.io

If you have Rust installed, you can install todo directly from crates.io:

$ cargo install cli-todo

From source

  1. Clone the repository.
  2. Run the installation script:
$ ./install.sh

Or manually with cargo:

$ cargo install --path .

Usage

Once installed, you can run the application using the todo command:

$ todo

To see the list of controls, you can use the --help flag:

$ todo --help

Controls (Vim-style keymaps)

Navigation

Keys Description
k, j Move cursor up and down
h, l Switch between TODO (left) and DONE (right) panels
g, G Jump to the start/end of the current item list
TAB Switch between the TODO and DONE panels

Item Manipulation

Keys Description
K, J Drag the current item up and down
i Insert a new item at cursor position
o Insert a new item below cursor (vim style)
O Insert a new item above cursor (vim style)
r Rename the current item
c Change item (clear and enter insert mode)
C Change entire line (clear and enter insert mode)
d, x Delete the current list item
Enter Move item between TODO and DONE

Mode Switching

Keys Description
ESC Exit insert/rename mode (back to normal mode)
Enter Confirm edit and exit insert mode
q Quit the application

Made with :heart: and Rust

Commit count: 6

cargo fmt