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

Uploaded Python 3

File details

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

File metadata

  • Download URL: qtodo-0.1.1.tar.gz
  • Upload date:
  • Size: 7.2 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.1.tar.gz
Algorithm Hash digest
SHA256 3ee74130dbc18a3d3bddf85ba19dd2bc6d0478d31771471c2d22cfda619e4193
MD5 56f96be52fcbb84e773fe5c898642110
BLAKE2b-256 fdfb740a02cf6a89d97cc12f8ef69f2a807aed77c173cf7f8f515278ef6d694d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: qtodo-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 7.4 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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f01ec3f0d6b6cbd08996fe027fa2ee1420c5ffd945011cec820b0c0a26e81f0d
MD5 6fc7077bb7c1160501b65b06ffe49d98
BLAKE2b-256 0af41a71ae3690c7dc8be7787bdb119c5018c767d7374f5739a23e1c203f97ff

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