Skip to main content

A beautiful terminal-based todo app built with Textual

Project description

Terminal Todo

A beautiful, keyboard-driven terminal-based todo application built with Textual.

Screenshot

Features

  • 📋 Multiple tabs for organizing tasks
  • ✅ Mark tasks as complete/incomplete
  • 🎨 Dark/Light theme toggle
  • ⌨️ Vim-style keyboard navigation
  • 💾 Persistent storage

Installation

The installation is permanent - once installed, the todo command will be available even after restarting your computer.

Windows

# 1. Install Python (if not already installed)
# Download from: https://www.python.org/downloads/
# ⚠️ IMPORTANT: Check "Add Python to PATH" during installation

# 2. Install pipx
python -m pip install --user pipx
python -m pipx ensurepath

# 3. Restart your terminal (PowerShell or CMD)

# 4. Install terminal-todo
pipx install git+https://github.com/marcodiazz/terminal-todo.git

# 5. Use the command
todo

Note for Windows users: After step 3, close and reopen your terminal for the PATH changes to take effect.

macOS/Linux

# 1. Install Homebrew (if not already installed)
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

# 2. Install pipx
brew install pipx
pipx ensurepath

# 3. Restart your terminal

# 4. Install terminal-todo
pipx install git+https://github.com/marcodiazz/terminal-todo.git

# 5. Use the command
todo

Alternative: From source (for development)

git clone https://github.com/marcodiazz/terminal-todo.git
cd terminal-todo
pip install -e .

Updating

To update to the latest version:

Windows

pipx upgrade terminal-todo

macOS/Linux

pipx upgrade terminal-todo

Or to force reinstall from GitHub:

pipx uninstall terminal-todo
pipx install git+https://github.com/marcodiazz/terminal-todo.git

Usage

Simply run:

todo

Keyboard Shortcuts

  • a - Add new task
  • t - Create new tab
  • r - Remove current tab
  • q - Delete selected task
  • d - Toggle dark/light theme
  • c - Toggle compact mode
  • h/l or ←/→ - Navigate between tabs
  • j/k or ↑/↓ - Navigate between tasks
  • Space - Toggle task completion
  • Esc - Close modal or unfocus input

Data Storage

Tasks are automatically saved to ~/.terminal-todo/data.json

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

terminal_todo-1.0.1.tar.gz (8.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

terminal_todo-1.0.1-py3-none-any.whl (7.2 kB view details)

Uploaded Python 3

File details

Details for the file terminal_todo-1.0.1.tar.gz.

File metadata

  • Download URL: terminal_todo-1.0.1.tar.gz
  • Upload date:
  • Size: 8.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.9

File hashes

Hashes for terminal_todo-1.0.1.tar.gz
Algorithm Hash digest
SHA256 a771f8c04b7ad1f92c81287da47e36625ab907d1505af9eb15fbe177e5dd6b70
MD5 c0cefba9b5ab666e6449811a9936dcfd
BLAKE2b-256 4ce9390f777da6ba4d01e4b3c8882ce844cea4cffce7bb03be0fc556806a22e7

See more details on using hashes here.

File details

Details for the file terminal_todo-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: terminal_todo-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 7.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.9

File hashes

Hashes for terminal_todo-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ca2c2df11dc77d02e170cc45c9b9ba08925501f040f6e0fbc887277ee76721f4
MD5 86064b3ef8a0e2e09270f815c5796828
BLAKE2b-256 c928ec43d55ae632845775171405e9cfa5a8d8cc61c4f76f4a4b2c307b32941c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page