Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Welcome to the Command Line Task Manager!

The Command Line Task Manager is a lightweight, keyboard-driven, object-oriented task management application built with Python. Designed for efficiency and speed, it lets you create, organize, and track your tasks while keeping your hands on the keyboard.

Dependencies

Install required Python packages with pip or conda:

pip install tabulate colorama

Basic Usage (No Installation Required)

You can use the task manager immediately without any installation by running it directly with Python:

# Clone the repository and navigate to the project directory
cd /path/to/command-line-task-manager

# Add a new task
python3 task_manager.py --add "Walk the dog" --priority 2 --due "12/25/2025"

# List incomplete tasks
python3 task_manager.py --list

# Show all tasks (including completed)
python3 task_manager.py --report

# Mark a task as done
python3 task_manager.py --done <task-uuid>

# Delete a task
python3 task_manager.py --delete <task-uuid>

# Search for tasks
python3 task_manager.py --query "dog" "walk"

Note: When using basic usage, tasks are stored in .todo.pickle in the current directory.

Optional Installation: Make Task Manager Globally Executable

To run the task manager from anywhere on your system using a simple todo command, follow these instructions:

Step 1: Add Shebang Line

Ensure your task_manager.py file has this line at the very top:

#!/usr/bin/env python3

Step 2: Update Pickle File Location

Modify the Tasks class in tasks.py to store the pickle file in your home directory. In the __init__ method, update the filename line:

import os
# Change this line:
self.filename = filename or os.path.expanduser('~/.todo.pickle')

Step 3: Check Your Shell

First, determine which shell you're using:

echo $SHELL

This will show either /bin/zsh, /bin/bash, or another shell.

Step 4: Make Executable and Create Symbolic Link

For macOS/Linux:

# Navigate to your project directory
cd /path/to/task-manager-app

# Make the script executable
chmod +x task_manager.py

# Create personal bin directory
mkdir -p ~/bin

# Create symbolic link (auto-updates when you edit code)
ln -s $(pwd)/task_manager.py ~/bin/todo

Step 5: Add to PATH

Add ~/bin to your PATH based on your shell (adjust as necessary):

echo 'export PATH="$HOME/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc

Step 6: Verify Installation

Open a new terminal window and test:

todo --list

If you see your tasks (or "No tasks found"), the installation worked!

Usage After Global Installation

Once globally installed, you can run from anywhere:

# Add a new task
todo --add "Walk the dog" --priority 2 --due "12/25/2025"

# List incomplete tasks
todo --list

# Show all tasks (including completed)
todo --report

# Mark a task as done
todo --done <task-uuid>

# Delete a task
todo --delete <task-uuid>

# Search for tasks
todo --query "dog" "walk"

Data Storage

  • Basic usage: Tasks stored in .todo.pickle in the project directory
  • Global installation: Tasks stored in ~/.todo.pickle in your home directory

About

Lightweight, keyboard-driven, object-oriented command line task management app built with Python.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages