Enhance your productivity by managing your tasks directly from the terminal and integrating them into your prompt using the Starship prompt. This script allows you to add, list, and manage to-do items seamlessly while providing an option to display them in your terminal prompt.
- iZiDo is a Terminal To-Do App with Starship Prompt Integration
- Add Tasks: Create new to-do items with optional priority and due dates.
- List Tasks: Display all pending and completed tasks with color-coded statuses and priorities.
- Manage Tasks: Mark tasks as done, remove tasks, or clear all tasks.
- Prompt Integration: Display your pending tasks directly in your terminal prompt using Starship.
- Toggle View: Easily enable or disable the to-do display in your prompt.
- Customization: Adjust the script and prompt configuration to suit your preferences.
- Accessible Everywhere: Use the
izido
command from any directory in your terminal.
Experience the sleek integration of iZiDo with your terminal prompt.
- Bash or Zsh shell.
- Starship Prompt installed and configured.
- Terminal emulator capable of displaying Unicode characters and colors.
- Awk and Sed utilities (commonly pre-installed on Unix systems).
Clone this repository to your local machine:
git clone https://github.com/yourusername/izido-terminal-todo-app.git
Navigate to the project directory:
cd izido-terminal-todo-app
Copy the todo.sh
script to /usr/local/bin
and rename it to todo
:
sudo cp izido.sh /usr/local/bin/izido
Ensure the script has execute permissions:
sudo chmod +x /usr/local/bin/izido
If you prefer to keep the script in a different location, add its directory to your PATH
:
export PATH="$PATH:/path/to/izido-terminal-todo-app"
Add the above line to your shell configurtion file (~/.bashrc
or ~/.zshrc
) to make it persistent.
Copy the contents of starship.toml
from the repository to your Starship configuration file:
cat starship.toml >> ~/.config/starship.toml
Alternatively, you can manually merge the configurations if you have existing customizations.
Add a new task with optional priority and due date:
iZido add -p high -d 2024-11-01 "Go to dentist"
- Priority Options:
high
,normal
,low
(default isnormal
). - Due Date Format:
YYYY-MM-DD
. If omitted, the due date is unspecified.
Display all tasks:
izido list
List tasks filtered by status or priority:
izido list pending # List pending tasks
todo list high # List high-priority tasks
Mark a task as completed using its ID:
izido done 1
Remove a task using its ID:
izido remove 2
Delete all tasks:
izido clear
Enable the to-do display in your terminal prompt:
izido view on
Disable the to-do display:
izido view off
The izido
script is customizable. You can modify it to suit your needs:
- Change Data Storage: Adjust how tasks are stored (e.g., use JSON or another format).
- Enhance Functionality: Add features like task editing, notifications, or integration with other tools.
Customize how tasks are displayed in your prompt by editing the starship.toml
configuration:
- Change Icons: Replace the Unicode icons with ones you prefer.
- Adjust Colors: Modify the color codes to match your terminal theme.
- Limit Task Display: Change the number of tasks shown in the prompt.
- Script Not Found: Ensure
izido
is in yourPATH
and has execute permissions. - Prompt Not Updating: Reload your shell or ensure the
starship.toml
configuration is correct. - Permissions Issues: Use
sudo
cautiously or adjust file permissions as needed. - Conflicting Aliases or Functions: Check for existing aliases or functions named
izido
usingtype izido
.
iZiDo is a playful twist on the phrase "Easy Do", reflecting the application's core mission to simplify task management directly from your terminal. The name embodies the ease and efficiency that iZiDo brings to your daily workflow, making task tracking an effortless part of your coding environment.
The term "Izi" is a colloquial contraction of "easy" commonly found in various English dialects and informal speech. By adopting this slang variation, iZiDo conveys a sense of casual simplicity and approachability, inviting users to integrate task management seamlessly without disrupting their coding flow.
- "Izi": Represents the ease of managing tasks.
- "Do": Emphasizes action and productivity.
Together, iZiDo suggests that handling to-dos can be both straightforward and effective, aligning with the application's goal to inspire and streamline your development process.
This project is licensed under the MIT License.
Contributions are welcome! Please follow these steps:
- Fork the repository.
- Create a new branch for your feature or bug fix.
- Commit your changes with clear messages.
- Submit a pull request to the
main
branch.
Author: IDMTR