Smart Tasker is a fast, lightweight command-line task tracker written in Rust. It lets you add, list, complete, and delete tasks directly from the terminal. All tasks are saved locally in a JSON file (data/tasks.json) — no database or external setup required.
cargo install smart_taskerOnce installed, use it globally:
smart_tasker add "Write documentation"
smart_tasker list
smart_tasker complete 2
smart_tasker delete 1- Add new tasks from the command line
- List all tasks with their completion status
- Mark tasks as completed
- Delete tasks by ID
- Simple local JSON storage
| Command | Description |
|---|---|
add "task desc" |
Add a new task |
list |
Show all tasks |
complete <id> |
Mark the task with given ID complete |
delete <id> |
Delete the task with given ID |
Task IDs are shown in the list output. They start from 1.
src/
├── main.rs # CLI entry point and Clap logic
├── commands/ # add.rs, list.rs, complete.rs, delete.rs
├── models/ # task.rs (Task struct, derives Serde)
├── storage/ # file.rs (load, save, show)
data/
└── tasks.json # Local JSON file storing tasks
This project is open source and freely usable under the MIT license.
See LICENSE for details.
Created by Adarsh as a hands-on project while learning Rust.
Feel free to fork, improve, or use it as a learning reference.