Skip to content

Latest commit

 

History

History
executable file
·
164 lines (132 loc) · 4.19 KB

File metadata and controls

executable file
·
164 lines (132 loc) · 4.19 KB

Reminder CLI

A simple yet powerful command-line reminder system that helps you keep track of your tasks and never forget important things. Perfect for developers and terminal users who want to stay organized without leaving their console.

✨ Features

  • ✅ Add, complete, and delete reminders
  • 📅 Set due dates for your tasks
  • 🎯 Priority levels (high, medium, low)
  • 🗑️ Clean up completed tasks
  • 💾 Persistent storage in JSON format
  • 🎨 Beautiful console output with emojis
  • 🔧 System-wide installation with remcli command

📦 Installation

Method 1: Direct Installation (Recommended)

  1. Clone or download the script:
git clone https://github.com/bezdarnosti-yt/rem_cli.git
cd rem_cli
  1. Make the script executable and install system-wide:
sudo cp main.py /usr/local/bin/remcli
sudo chmod +x /usr/local/bin/remcli
  1. Verify installation:
remcli --help

Method 2: Manual Installation

  1. Download the script:
wget https://raw.githubusercontent.com/yourusername/reminder-cli/main/main.py
  1. Install to your system:
sudo install -m 755 main.py /usr/local/bin/remcli

Don't forget to add remcli in startup shell!

🚀 Quick Start

Add your first reminder:

remcli add "Finish project documentation" -p high -d 2024-01-20

List your active reminders:

remcli list

Complete a task:

remcli complete 1

📖 Usage

Adding a reminder

remcli add "Your task description" [options]

Options:

  • -p, --priority: Priority level (high, medium, low) - default: medium

  • -d, --due-date: Due date in YYYY-MM-DD, DD-MM-YYYY, or MM-DD-YYYY format

Examples:

remcli add "Buy groceries" -p high -d 2024-01-18
remcli add "Call mom" -p low
remcli add "Finish report" --due-date 20-01-2024 --priority high

Listing reminders

remcli list [--all]

Without --all: Shows only active reminders

With --all: Shows all reminders including completed ones

Completing a reminder

remcli complete <id>

Example:

remcli complete 3

Deleting a reminder

remcli delete <id>

Example:

remcli delete 2

Cleaning up completed reminders

remcli cleanup

This removes all completed reminders from your list.

🗂️ Data Storage

Your reminders are stored in ~/.config/rem_cli/reminders.json. This file is automatically created and managed by the application.

🔧 Configuration

The application uses a simple JSON file for storage. The default location can be changed by modifying the date_file parameter in the source code if needed.

🐛 Troubleshooting

Common issues

  1. Command not found: Ensure /usr/local/bin is in your PATH
echo $PATH | grep /usr/local/bin
  1. Permission denied:
sudo chmod +x /usr/local/bin/remcli
  1. JSON decode error: If your reminders file gets corrupted, you can safely delete it at ~/.config/rem_cli/reminders.json and start fresh.

  2. Date format not recognized: Use one of the supported formats: YYYY-MM-DD, DD-MM-YYYY, or MM-DD-YYYY.

🗑️ Uninstallation

To remove remcli from your system:

sudo rm /usr/local/bin/remcli
rm -rf ~/.config/rem_cli/  # Optional: remove your reminder data

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the project

  2. Create your feature branch (git checkout -b feature/AmazingFeature)

  3. Commit your changes (git commit -m 'Add some AmazingFeature')

  4. Push to the branch (git push origin feature/AmazingFeature)

  5. Open a Pull Request

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

🙏 Acknowledgments

  • Inspired by various CLI todo applications

  • Icons from the Unicode standard

  • Built with Python's standard library for maximum compatibility

📞 Support

If you have any questions or issues, please open an issue on GitHub.

Stay organized and never forget anything again! 🚀

Pro tip: Add remcli list to your shell profile (.bashrc, .zshrc) to see your reminders every time you open a terminal!