Nicer README

This commit is contained in:
Joseph Ferano 2023-06-17 23:16:31 +07:00
parent 4beda4fae7
commit 6e91544cfe

View File

@ -1,12 +1,55 @@
#+OPTIONS: toc:nil
* About
This ia a Rust powered TUI Kanban Board built using the [[https://github.com/fdehau/tui-rs][tui-rs]] library. It has
vim-friendly keybindings and while not the most featureful experience, it's fast
and gets the job done. You can save your TODOs in your project's root as either
a json file or a SQLite database.
* Installing
Clone this repository, then simply run ~cargo build~ or ~cargo run~
* kanban-tui
** Why kanban-tui?
kanban-tui is a lightweight, minimalist, terminal-based [[https://en.wikipedia.org/wiki/Kanban_board][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.
** Motivation
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 [[https://orgmode.org/][org]] person myself, but if someone actually decides they like this level
of minimalism, then I might consider working on it more.
** Features
- 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
** Building and Installing
To build and install kanban-tui, follow these steps:
- Install Rust: If you don't have Rust installed, you can get it from
[here](https://www.rust-lang.org/tools/install).
- Clone this repository
- 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.
** Usage
kanban-tui keeps it super simple. Just create tasks and move them to the columns
that indicate their status.
** Keybindings
- Quit: "q"
- Navigation: "hjkl"
- Move Task: "HJKL"
- New Task: "n"
- Edit Task: "e"
- Cycle Edit Fields: "Tab"
- Column Top: "g"
- Column Bottom: "G"
** Potential Future Features
- 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 [[https://sw.kovidgoyal.net/kitty/graphics-protocol/][Kitty Term Image Protocol]])
- Read from other backends (Trello, Jira, etc;)
- Copy task
- Reports
- Export to other formats
** Contributions
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.
** License
kanban-tui is licensed under the terms of the MIT license. For more information,
see the included LICENSE file.