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.0.tar.gz (8.2 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.0-py3-none-any.whl (7.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: terminal_todo-1.0.0.tar.gz
  • Upload date:
  • Size: 8.2 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.0.tar.gz
Algorithm Hash digest
SHA256 27af088ad7af507e46fce55d95650e1a46e4c0d4727d7279dd1d1c538fe36eee
MD5 101f588d3f011f9ea1183bd420e69db5
BLAKE2b-256 8e3d96cceccd8e770c37bbda1c0022310faf5c59243129b7e41c85fcc2efdb2d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: terminal_todo-1.0.0-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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e7c662b4cf223cee50caa8921b75efd746aec2de56942c56060429b146ba268e
MD5 937734c0f15e36af5f30be3d75be1d07
BLAKE2b-256 0e120547b034933ea4b8d5a6c3949c0518736333c7a102445bbd50f95b5c5e5c

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