Skip to main content

A Minimal CLI for Queue-Based Task Tracking

Project description

tqu – A Minimal CLI for Queue-Based Task Tracking

tqu is a lightweight command-line tool designed for queue-based task tracking with minimal overhead. Instead of complicated features like priorities or due dates, tqu uses a simple push/pop workflow across one or multiple queues. Whether you're managing everyday chores, bills, or side projects, tqu keeps task tracking fast, intuitive, and distraction-free.

tqu demo

Highlights

  • Minimalist approach: Focuses solely on adding and removing tasks in a queue. No complicated features like priorities, due dates, or attachments.
  • Queue-Based: Default queue for simple use, but supports multiple queues for different contexts (e.g., “daily,” “bills,” “my_project”).
  • CLI-centric: Fast interaction entirely through the command line
  • Low Friction: Short commands with sensible defaults, and queues are auto-created without extra steps.

Installation

  1. Install (recommended via uv):

    uv tool install tqu
    

    or

    pipx install tqu
    

    or

    pip install --user tqu
    
  2. (Optional) By default, tqu stores its database at ~/.tqu.sqlite. You can customize the location by setting the TQU_DB_PATH environment variable:

    export TQU_DB_PATH="/path/to/your/custom/database.sqlite"
    

Usage

Below are the commands you can run with tqu. In all cases, if you omit the queue name, default is used.

Basic: Single Queue Mode

For simple task management, you can use the default queue without specifying a queue name:

  1. Add a task to the default queue:

    tqu add "Pay electricity bill"
    
  2. List tasks in the default queue:

    tqu list
    

    This shows active tasks along with their IDs, oldest added task first.

  3. Remove the most recent (last) task from the default queue:

    tqu pop
    

    or

    tqu poplast
    

    This prints the removed task.

  4. Remove the least recent (first) task from the default queue:

    tqu popfirst
    

    This prints the removed task.

  5. Delete a task by its unique integer ID (no queue needed):

    tqu delete <task_id>
    
  6. Delete the default queue (and all tasks in it):

    tqu delete
    

    This prints all removed tasks from that queue.

Advanced: Multiple Queue Mode

Organize tasks into separate queues for different contexts. For multiple queues, simply add <queue> as the last argument.

  1. Add a task to a specific queue:

    tqu add "Buy groceries" errands
    

    If the queue “errands” does not exist, tqu creates it automatically. Note that, queue name can not be only numeric.

  2. List tasks in a specific queue:

    tqu list errands
    
  3. Pop the most recent task from a specific queue:

    tqu pop errands
    

    (or “poplast”)

  4. Pop the least recent task from a specific queue:

    tqu popfirst errands
    
  5. Delete an entire queue (and all tasks in it):

    tqu delete errands
    
  6. Delete a single task by ID (no need for queue name):

    tqu delete <task_id>
    
  7. List all queues that have at least one active task:

    tqu
    

Everyday Use Cases

Here are some everyday scenarios in which tqu can keep you organized:

  1. Daily Planning: Keep track of things you need to do today or this month in queues like today, month, feb2025, or biils.
  2. Reimbursements: Keep track of reimbursements you need to file at the end of the month in a queue named reimbursements.
  3. Reading / Watch / Listen Lists: Keep track of books, papers, blogs, movies, podcasts, or music you want to consume in queues like books, papers, movies, podcasts, or music.
  4. Side Projects: Keep track of tasks for side projects in queues like project1, project2, or project3.
  5. Travel Planning: Keep track of things you need to do before your next trip in a queue named travel or taiwan-trip.

License

This project is licensed under the MIT License. See the LICENSE file for details.

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

tqu-1.0.2.tar.gz (8.0 kB view details)

Uploaded Source

Built Distribution

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

tqu-1.0.2-py3-none-any.whl (8.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: tqu-1.0.2.tar.gz
  • Upload date:
  • Size: 8.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.4.26

File hashes

Hashes for tqu-1.0.2.tar.gz
Algorithm Hash digest
SHA256 155385e6aa27dab11f0c20ec7a7305e82386e0e0d94dfa9ec1a694e5ef40f4d5
MD5 5c9b22ba9736066de8bdad52f7f974fb
BLAKE2b-256 f17bead3cdeac8044d08df6e98631c0baed419ca8a49e97accabea5b481e7b65

See more details on using hashes here.

File details

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

File metadata

  • Download URL: tqu-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 8.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.4.26

File hashes

Hashes for tqu-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 fa0bfd615f357abac7156b353f0d50285b2852808fb26d93920a89ad0a374940
MD5 c81ea18aeb1b775c2ed61989f18687ca
BLAKE2b-256 4fd319fae457d56732ff2cb957cb24d46816daca17fc3440103f9e101c3ff3eb

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