#todo #status #delete #edit #basic #list

bin+lib doru

A simple library providing basic Todo functionality

1 unstable release

new 0.1.0 Dec 6, 2024

#94 in #edit

MIT/Apache

34KB
464 lines

Doru

Doru is a simple TODO list in your terminal.

Features

Add new TODOs

doru add "Code something amazing"

List all your TODOs

doru list
[ ] Learn Rust           [Open] (ID: 1)
[ ] Build a project      [InProgress] (ID: 2)
[ ] Publish on GitHub    [Open] (ID: 3)

Edit a TODO

doru edit 1 "Learn Rust like a Pro"

Update status of a TODO

doru status 1 in-progress

List TODOs with specific status

doru list in-progress
[ ] Learn Rust like a Pro [InProgress] (ID: 1)
[ ] Build a project      [InProgress] (ID: 2)

Delete a TODO

doru delete 3

Installation

Using Cargo Install

You can use Cargo to install Doru from crates.io

Download the binary directly

TODO: add instructions to download artifact from GitHub, when ready

If you want to run Doru like in the examples above, you will need to add Doru to your Path.

Build from source

If you have Rust toolchain installed on your machine, you can clone directly from GitHub and build locally. No additional dependencies are required:

git clone https://github.com/yourusername/doru.git
cd doru
cargo build --release

Configuration

Doru stores TODO items in a JSON file. By default, this file is located at ~/.doru/TODOs.json. You can change the location of the storage file by setting the DORU_PATH environment variable or by using the --path option with the doru command.

Documentation

TODO: add docs.rs link

If you cloned the repository, you can run

cargo doc --no-deps --open

to generate the documentation and open it in your browser.

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Dependencies

~2–12MB
~95K SLoC