Skip to main content

qTodo - A todo application

Project description

qTodo

A simple, fast, and intuitive Command-Line Interface (CLI) task manager built in Python.

Installation

You can install qtodo globally directly from PyPI using pip:

pip install qtodo

Quick Start

qtodo is built around the concept of "Lists" (like "Inbox", "Project", "Groceries"). By default, you'll be placed in the Inbox list.

# Add a task to your default list
qtodo add "Buy milk"

# Add a task to a specific list (it creates the list automatically if it doesn't exist!)
qtodo add "Fix login bug" @Work

# See your tasks
qtodo ls

# Mark a task as done (using its ID from the ls command)
qtodo done 1

Commands Reference

Managing Tasks

  • qtodo add "TASK" [@LIST_NAME]: Add a new task. Optionally append @listname to add it directly to a specific list.
    • --priority (-p): Priority of the task (1-3, default is 2)
    • --duration: Expected duration in minutes (default is 60)
    • --due: Due date (e.g., 'today', 'tomorrow', '2023-12-31')
  • qtodo ls [@LIST_NAME]: List tasks. By default, it shows tasks from your currently active list.
    • --due: Filter by a specific due date.
    • --all: Show all tasks, including completed ones from the past.
  • qtodo done <ID>: Toggle a task's completion status.
  • qtodo rm <ID>: Delete a task permanently.

Managing Lists

  • qtodo switch <LIST_NAME>: Change your default list context. All subsequent add and ls commands will automatically target this list without needing to type @listname.
  • qtodo lists: View all your existing lists.
  • qtodo newlist <NAME>: Create a new list explicitly (optionally provide a --desc).
  • qtodo editlist <OLD_NAME> <NEW_NAME>: Rename a list or update its description.
  • qtodo rmlist <NAME>: Permanently delete an entire list and all of the tasks inside it.

Example Workflow

Let's say you're starting a new coding project:

  1. Create a dedicated list and switch your context to it so you don't have to keep typing its name:
    qtodo newlist Code --desc "My new app"
    qtodo switch Code
    
  2. Add some tasks:
    qtodo add "Setup database" -p 1
    qtodo add "Write API endpoints" --due tomorrow
    qtodo add "Design frontend"
    
  3. Check your list:
    qtodo ls
    
  4. Check off the database task (assuming its ID is 1):
    qtodo done 1
    

Connect

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

qtodo-0.1.2.tar.gz (9.7 kB view details)

Uploaded Source

Built Distribution

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

qtodo-0.1.2-py3-none-any.whl (12.7 kB view details)

Uploaded Python 3

File details

Details for the file qtodo-0.1.2.tar.gz.

File metadata

  • Download URL: qtodo-0.1.2.tar.gz
  • Upload date:
  • Size: 9.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for qtodo-0.1.2.tar.gz
Algorithm Hash digest
SHA256 ff4274b25d4392ea8f5b2f1de5d10cb0d0a4be3e9a5e9d5cf725fccda676fd3c
MD5 82eb55ed133c9f7a819eedaf69163032
BLAKE2b-256 b3ec49a75a41062e784d169d1ed40d93c8d21c424494c6ea41b1dcb7cc066d91

See more details on using hashes here.

File details

Details for the file qtodo-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: qtodo-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 12.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for qtodo-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 3435d0b7940cd9b120e39e14cbe9d9de5a1f760e942d606f03b18c95b7ddf5d5
MD5 f3535e66e94f1eed9700cfdf02977942
BLAKE2b-256 cd985b0b98cfc4e90fa5bf0410576df6bd60a7fbbd81f9029794d091dd149a56

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