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.2.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.2-py3-none-any.whl (7.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: terminal_todo-1.0.2.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.2.tar.gz
Algorithm Hash digest
SHA256 bc41521e1efc565b3f6e18f99fa48e812fc20aa2647c85d5986fddfc4cb16a82
MD5 9df967838a6ec8bca36ed7836c09c402
BLAKE2b-256 18617c99aeb29096c9e87d7d6f9e6cd1cb3f187eb97403bec8bd855c039e2459

See more details on using hashes here.

File details

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

File metadata

  • Download URL: terminal_todo-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 7.3 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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 f6085dfc88ea67d81374570629ac5976cf45aef02bbdbfec9bec2ceccd39864f
MD5 16174b2adc7a733de43f07e1ef0f65fd
BLAKE2b-256 974c2c02a6c975b388ec80d83470a570abb75eda4d53f68a3f5c168fa8980cd4

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