Crates.io | htodo |
lib.rs | htodo |
version | 0.1.5 |
source | src |
created_at | 2023-11-17 08:35:55.41425 |
updated_at | 2023-11-17 10:22:22.456015 |
description | A simple command line To-Do app built with Rust |
homepage | https://github.com/citrus327/rust_todo |
repository | https://github.com/citrus327/rust_todo |
max_upload_size | |
id | 1038826 |
size | 61,624 |
A simple To-do app that I use to get started with rust lang.
To-dos will be stored in a json file under ProjectDir by default.
macos: /Users/<user_name>/Library/Application Support/htodo/todo.json
cargo install htodo
htodo init
htodo add "This is a todo"
htodo add "This is a todo" --complete
htodo complete [id]
htodo uncomplete [id]
htodo list
htodo clean
[dependencies]
serde = { version = "1.0", features = ["derive"] } # data (de)serialize
serde_json = "1.0.108" # json (de)serialize
clap = { version = "4.4.7", features = ["derive", "cargo"] } # Cli argument parser
notify-rust = "4" # XDG notification
prettytable-rs = "^0.10" # print data in table format
directories = "5.0" # get path of sys dir
Pattern matching and related error handling.
File processing.
Path processing.
CLI arguments parsing.
XDG related notification with extern "C".
Crate publish
Unit testing
System directories
Macros
For testing:
cargo test -- --test-threads 1
Search and sorting feature
Colored output
Add due date to To-Do
Notification Icons
This is still a very basic todo app. Pr is very much welcomed.