Skip to content
← All work

Desktop Application

TaskDesk

Production — actively evolving

A desktop productivity application, built in Python with a PostgreSQL backend, for structured task tracking and operational workflow management across clients and projects.

Consulting work generates a continuous stream of tasks, open threads, source files, and partial progress across multiple clients and projects simultaneously. The task managers I evaluated were not structured around this pattern — they lacked the queryable data model needed to retain operational context reliably when moving between clients or returning to paused work.

TaskDesk — screenshot

What it solves

  • Task and project status scattered across email, spreadsheets and verbal handoffs, with no single source of truth.
  • No consistent, queryable record of task status and history for day-to-day operational work.
  • Difficulty retaining operational context — notes, related files, and partially completed steps — when moving between clients or returning to paused work.

Technology stack

PythonPostgreSQLSQL

My role

Built and used in my own consulting practice. Requirements come from real operational use rather than a specification document.

Highlights

Structured task model

Tasks are tracked with defined fields and status rather than free-text notes.

PostgreSQL-backed data

Task and workflow data is stored in PostgreSQL, enabling direct querying rather than relying on spreadsheets.

Operational context retention

Each task carries its associated notes, source files, and progress state — so returning to paused work does not require reconstructing what was in progress.

Why a custom application

The task managers I evaluated treat tasks as isolated items. Consulting work is relational: a task belongs to a project, a project belongs to a client, and the value is in the thread of notes, decisions, and linked files that accumulate over time. TaskDesk is structured around that relational model rather than retrofitting it.

Current status

TaskDesk is in production and actively evolving. New capabilities are added as genuine operational needs emerge, not as planned features ahead of their usefulness.

Have a similar problem to solve?
Let’s talk about what a practical solution would look like for your organization.
Discuss a project