Skip to main content

CLI and TUI for Taskdog task management system

Project description

taskdog-ui

Command-line interface and terminal user interface for Taskdog task management system.

Overview

This package provides two user interfaces for Taskdog:

CLI (Command-Line Interface)

  • 30+ commands for task management
  • Rich terminal output with colors and formatting
  • Batch operations support
  • Export capabilities (JSON, CSV, Markdown)

TUI (Terminal User Interface)

  • Full-screen interactive interface powered by Textual
  • Real-time task table with filtering and search
  • Gantt chart visualization
  • Vi-style keyboard navigation
  • Modal dialogs for task creation and editing

Installation

Basic installation (CLI and TUI):

pip install taskdog-ui

With server support (includes taskdog-server):

pip install taskdog-ui[server]

For development:

pip install -e ".[dev]"

Prerequisites

IMPORTANT: The CLI and TUI require a running API server. All commands will fail without it.

1. Install the Server

# Server should be installed via workspace
cd /path/to/taskdog
make install

2. Start the Server

# Start the server (required before any CLI/TUI usage)
taskdog-server --host 127.0.0.1 --port 8000

# Or use systemd for auto-start (recommended)
systemctl --user start taskdog-server
systemctl --user enable taskdog-server

3. Configure API Connection

Edit ~/.config/taskdog/cli.toml:

[api]
enabled = true
host = "127.0.0.1"
port = 8000

Or set environment variables:

export TASKDOG_API_HOST=127.0.0.1
export TASKDOG_API_PORT=8000

4. Verify Connection

# Test that CLI can connect to server
taskdog table

Usage

Note: All commands below require the server to be running (see Prerequisites above).

CLI Examples

# Add a task
taskdog add "Implement feature" --priority 3

# View tasks
taskdog table
taskdog gantt

# Task lifecycle
taskdog start 1
taskdog done 1

# Optimization
taskdog optimize --algorithm balanced

TUI

Launch the interactive interface:

taskdog tui

Keyboard shortcuts:

  • a: Add task
  • s: Start task
  • d: Complete task
  • e: Edit task
  • /: Search
  • q: Quit

Architecture

The UI uses:

  • Click: CLI framework
  • Rich: Terminal formatting and rendering
  • Textual: TUI framework
  • httpx: API client (for client-server mode)
  • taskdog-core: Core business logic and infrastructure

Dependencies

  • taskdog-core: Core business logic
  • click: CLI framework
  • rich: Terminal formatting
  • textual: TUI framework
  • httpx: HTTP client

Testing

pytest tests/

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

taskdog_ui-0.19.0.tar.gz (145.8 kB view details)

Uploaded Source

Built Distribution

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

taskdog_ui-0.19.0-py3-none-any.whl (215.2 kB view details)

Uploaded Python 3

File details

Details for the file taskdog_ui-0.19.0.tar.gz.

File metadata

  • Download URL: taskdog_ui-0.19.0.tar.gz
  • Upload date:
  • Size: 145.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for taskdog_ui-0.19.0.tar.gz
Algorithm Hash digest
SHA256 5155ecc66dece914bfefa116ac72cd973e0af6f13fcd8f2b418c692e2f786371
MD5 c8203eb49928c6fa53b96a149913c936
BLAKE2b-256 2a8ad063b6e4ed26b697591ca1f5e98e705750c375c5a3e51081c643ca5f841f

See more details on using hashes here.

Provenance

The following attestation bundles were made for taskdog_ui-0.19.0.tar.gz:

Publisher: release.yml on Kohei-Wada/taskdog

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file taskdog_ui-0.19.0-py3-none-any.whl.

File metadata

  • Download URL: taskdog_ui-0.19.0-py3-none-any.whl
  • Upload date:
  • Size: 215.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for taskdog_ui-0.19.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4662b8d1c40ed0fc7bea6b9b8ac07d8b9edabc4b4dc028810f78fe2968dee620
MD5 181a5d60737958bc4e6771943bda262b
BLAKE2b-256 7041214aa4c29cf3b3a781f963bd543ab77a9cc64ac15d421b363d6e1fa18233

See more details on using hashes here.

Provenance

The following attestation bundles were made for taskdog_ui-0.19.0-py3-none-any.whl:

Publisher: release.yml on Kohei-Wada/taskdog

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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