Tasky CLI
A simple Rust CLI to manage to-do lists.
About
Tasky CLI is a lightweight command-line tool written in Rust for managing to-do lists. It supports adding, listing, removing, and marking tasks as done, with colorful output and JSON storage.
Designed for beginners, Tasky CLI is ideal for:
- Learning Rust
- Contributing to open source
- Organizing tasks on Windows (CMD/PowerShell), Linux, or macOS
See tasky.txt for a detailed project overview.
Why Tasky CLI?
In a world of bloated productivity apps, Tasky CLI stays out of your way.
- Speed: Add and check tasks in seconds without leaving your terminal.
- Context Preservation: If you're already coding, don't break your flow by switching to a web browser or GUI app.
- Privacy & Portability: Your tasks are stored in a simple
tasks.jsonfile on your machine. No cloud, no tracking. - Visual Clarity: Uses high-contrast colors to help you distinguish between pending, completed, and overdue tasks at a glance.
When to use it?
- Daily Standups: Quickly list what you finished yesterday and what's on for today.
- Feature Checklists: Track small sub-tasks during a complex refactor.
- Learning Rust: A perfect project to read and understand how Rust handles CLI arguments and file I/O.
- Quick Reminders: "Pay bills", "Commit changes", or "Buy coffee" — captured in 5 seconds.
For the Non-CLI Developer
You don't need to be a "terminal wizard" to use Tasky. If you usually avoid the command line, Tasky is the perfect "gateway tool":
- Human Readable: Commands are simple English (
add,list,done). - Zero Configuration: Install it, and it just works. No config files to mess with initially.
- Bridge the Gap: It helps you get comfortable with the terminal in a low-stakes, highly productive way.
- Scriptable: Once you're ready, you can easily use it in your own automation scripts or CI/CD pipelines.
Features
-
Add tasks:
# With due date (YYYY-MM-DD) -
List tasks: (colorized output, overdue tasks in red)
-
Edit tasks:
-
Remove tasks:
-
Mark tasks as done:
-
JSON storage: Tasks stored in
tasks.json -
Cross-platform: Works on CMD, PowerShell, Linux, macOS
Planned features:
- Priority tags
- JSON output enhancements
Installation
1. Install Rust
Follow the instructions at rust-lang.org or run:
|
- On Windows, follow the
rustup-init.exeprompts.
2. Install Tasky CLI via Cargo
3. Or build from source
4. Windows CMD color support
Usage
# Add a new task
# Add a task with a due date
# List all tasks
# Edit a task
# Mark a task as done
# Remove a task
Contributing
Tasky CLI welcomes beginners! We aim for 90%+ beginner contributors.
Steps to get started:
-
Read
CONTRIBUTING.mdfor guidance. -
Check issues for good first issue tasks, such as:
- Adding a
--donecommand - Supporting due dates
- Improving documentation
- Adding a
-
Open a pull request — no experience needed! We’ll guide you.
License
Tasky CLI is licensed under the MIT License.
Community
- Questions: GitHub Issues
- Join discussions: Rust Discord, r/rust
- Share your progress: Use
#rustlangor#taskyon X (Twitter)
Happy task managing! 🦀