Skip to content
4 min read

TaskDashboard: Building a Local-First, Portable Project Manager

When generic SaaS tools failed to track 'blocked' workflows effectively, I built TaskDashboard. A standalone, portable Electron application designed for privacy, hierarchy, and managing dependencies without the cloud.

  • #local-first
  • #react
  • #developer-tools
  • #open-source

The Why: Solving the 'Blocked' State

The genesis of this project wasn't a client request, but a conversation at the dinner table. My wife was struggling to manage a high volume of projectsnot because of the workload itself, but because of the dependencies. She needed a way to instantly see not just what to do, but why a specific task was stalling and who was blocking it.

As a software engineer accustomed to tools like TFS and Azure DevOps, I recognized the need for a hierarchical structure (Projects → User Stories → Tasks). However, existing commercial tools were either too complex, cloud-dependent, or lacked the specific 'Blocked' visibility she needed. Security was also paramount; the data needed to remain local.

The How: A Modern, Portable Stack

I built TaskDashboard as a solution. It is a desktop-first application that combines the modern developer experience of the web with the utility of native software.

Technical Architecture

  • Frontend: Built with React 19 and TypeScript, utilizing Zustand for state management and Tailwind CSS for a clean, dark-mode compatible UI.
  • Desktop Engine: Wrapped in Electron 39, bridging the web app to the OS.
  • Persistence: To ensure total privacy and offline capability, I used Dexie.js (a wrapper for IndexedDB). There is no backend API; the database lives in the user's browser engine.

True Portability

A conceptual illustration of software portability featuring a glowing USB drive containing the application and database, plugged into a transparent laptop.
The whole application — and its database — on a USB drive.

The standout feature of this engineering effort is the build strategy. Using electron-builder, I configured the app to compile into a single Portable Executable (.exe). It requires no installation and no admin rights. The data folder is generated alongside the executable, meaning the entire appprogram and databasecan run directly from a USB drive or Dropbox folder. It’s the ultimate 'plug-and-play' management tool.

Feature Highlights

An abstract 3D visualization of the data hierarchy, showing Projects splitting into User Stories and Tasks, with visual indicators for blocked items.
Projects split into user stories and tasks, with blocked items surfaced rather than buried.

The UI features a drag-and-drop Kanban board powered by @dnd-kit, allowing cards to move between 'New', 'Active', 'Completed', and the critical 'Blocked' status. It supports a full hierarchical view, ensuring that a blocked Task correctly reflects the status of its parent User Story.

Open Source & Deployment

Believing in the power of community tools, I have made the source code fully available. Anyone can clone the repository, build the portable executable, and deploy it for their own personal or professional use. You can access the code and build instructions here: github.com/LiorSherbaty/TaskDashboard.