kanban-tui is a lightweight, minimalist, terminal-based Kanban tool built in Rust. Keybindings are vim-like, making it pretty fast to navigate and handle tasks. Currently it's not that feature-rich, but it provides all the essential functionality you need to manage tasks in the classic Kanban way.
It uses ratatui for the TUI interface rendering and rusqlite for data persistence. Both awesome crates to work with.
Decided to make kanban-tui to work on a non-trivial Rust application. I enjoy TUIs for their simplicity and efficiency. I don't really plan on using this, as I'm an org person myself, but if someone actually decides they like this level of minimalism, then I might consider working on it more.
- Terminal-based: Enjoy the simplicity and speed of a text-based interface
- Vim-like keybindings: For those who have
hjkl
burned into their skull - SQLite backed: Overkill maybe? At least I like SQL
- No bloat: Just create a task and move it around
To build and install kanban-tui, follow these steps:
- Install Rust: If you don't have Rust installed, you can get it from here.
- Clone this repository, cd into it
- Build the project:
cargo build --release
- The built binary can be found in
target/release/kanban-tui
- Optionally, you can move the binary to a directory in your
$PATH
for easier access.
It is recommended to run kanban-tui
from the root of your project so it can
pick up the project's name. This automatically creates a SQLite database there
named kanban.db
.
If you prefer a different name for the database file, you can specify the file
name when running the app, like kanban-tui todos.kanban
as an example.
Once open, start creating tasks, then move them across columns to track their status - from "To Do", through "In Progress", to "Done". All task and navigation operations are performed through simple keybindings.
- Quit:
q
- Navigation:
hjkl
- Move Task:
HJKL
- New Task:
n
- Edit Task:
e
- Cycle Form Fields:
Tab
- Column Top:
g
- Column Bottom:
G
- Timestamps for tasks (created, moved, completed)
- Customizable column (name, amount, etc;)
- More project stats (velocity, avg time to complete)
- Column visibility toggle (hide "Ideas")
- Attach images (using Kitty Term Image Protocol)
- Read from other backends (Trello, Jira, etc;)
- Copy task
- Reports
- Export to other formats
Karrq was nice enough to provide some help from time to time and even contributed a handy little macro.
While the project is primarily developed to practice Rust, if for some reason you like this and want to contribute, open an issue and we can discuss whatever.
kanban-tui is licensed under the terms of the MIT license. For more information, see the included LICENSE file.