SELF-HOSTING

TaskTrove Guide – Install and Master This Open-Source Task Manager

In 2025, the average knowledge worker juggles dozens of tasks across multiple platforms, losing countless hours to context switching and forgotten deadlines. If you’re drowning in task management chaos using cloud-based tools, paying monthly subscriptions, and worrying about your data privacy, it’s time to discover a better way. Enter TaskTrove—a modern, fully self-hosted open-source task manager that puts you back in control.

TaskTrove isn’t just another todo list app. It’s a comprehensive task management solution built for developers, productivity enthusiasts, and remote workers who value privacy, simplicity, and power. With natural language task creation, recurring tasks, project organization, and multiple viewing options, TaskTrove provides everything you need without the bloat or monthly fees.

Unlike proprietary tools that track your habits and sell your data, TaskTrove runs entirely on your infrastructure. Your tasks stay yours—no third-party servers, no telemetry, no surprises. Whether you’re running a single instance on your home server or deploying it across your organization, TaskTrove scales to your needs while maintaining complete data privacy.

This comprehensive guide will walk you through everything: from understanding what makes TaskTrove special, to installing it on your system, mastering its powerful features, and building effective workflows. By the end, you’ll have a fully functional personal task management system that works exactly how you want it.

TaskTrove Theme

What is TaskTrove?

TaskTrove is an open-source, self-hostable task and project management application built with modern web technologies (React, TypeScript, and Node.js). Available at github.com/dohsimpson/TaskTrove, it’s designed as a privacy-first alternative to cloud-based task managers like Asana, Todoist, and Microsoft To Do.

At its core, TaskTrove helps you organize, track, and complete tasks efficiently. However, it goes far beyond basic todo lists by offering sophisticated features like natural language processing, recurring task automation, project grouping, multiple viewing modes, and complete data portability. The best part? Everything runs on your own servers with zero data collection or tracking.

Why TaskTrove Stands Out

  • Complete Privacy: Unlike cloud-based competitors, TaskTrove is completely self-hosted on your infrastructure. Your task data never leaves your servers, never goes to third-party services, and is never monetized through analytics or data sales.
  • Zero Subscription Fees: Many popular task managers charge $10-20 per month. TaskTrove is completely free and open-source. You only pay for the infrastructure to run it.
  • Natural Language Understanding: Create tasks using conversational language like “tomorrow at 2pm” or “every Monday,” and TaskTrove understands what you mean.
  • Rich Organization: Group tasks by projects, add color-coded labels, create sections, and switch between list, Kanban board, and calendar views—all within a single interface.
  • Developer-Friendly: Built with open-source technologies (React, TypeScript), TaskTrove welcomes community contributions and customizations. Want to modify it? You have full access to the source code.

Key Features and Benefits

Core Features Overview

FeatureDescriptionBenefit
Complete PrivacySelf-hosted on your infrastructure with zero trackingFull data ownership and control
Smart Task CreationNatural language parsing for dates and timesFaster task entry, less friction
Recurring TasksDaily, weekly, monthly, or custom patternsAutomate routine tasks automatically
Project OrganizationGroup tasks by projects, sections, and labelsBetter organization and context
Modern InterfaceClean design with dark/light themes and mobile supportComfortable to use for hours daily
Simple Data ManagementFile-based JSON storage for easy backupsEasy migration and data preservation
Keyboard ShortcutsQuick access to common functionsFaster workflow for power users
Multiple ViewsList, Kanban board, and calendar perspectivesVisualize tasks the way that works for you
Subtasks & DetailsPriorities, due dates, comments, attachmentsComplex project management capability

Real-World Benefits

  • For Remote Workers: TaskTrove eliminates distractions from cloud tools with analytics dashboards. No notifications about your teammates’ tasks, no corporate data collection—just your tasks, your way.
  • For Developers: As an open-source project built with TypeScript and React, developers can extend TaskTrove, customize workflows, or contribute improvements back to the community.
  • For Privacy-Conscious Users: In an era of data breaches and privacy concerns, TaskTrove offers peace of mind that your personal information stays personal.
  • For Budget-Conscious Teams: Self-host once, use forever. No per-user licensing, no tier upgrades, no subscription creep.

Prerequisites and System Requirements

Before installing TaskTrove, ensure your system meets these requirements:

System Requirements

RequirementMinimumRecommended
CPU1 core2+ cores
RAM512 MB2 GB+
Storage200 MB1 GB+
OSAny (Docker)Linux/macOS/Windows with Docker

Required Software

Option 1: Docker (Recommended)

  • Docker 20.10+ installed
  • Docker Compose 2.0+ (for compose method)
  • 10-20 GB free disk space for Docker images

Option 2: Manual Setup

  • Node.js 18+ installed
  • npm or pnpm package manager
  • Basic knowledge of terminal/command line

Option 3: Development Setup

  • Git installed
  • Node.js 18+
  • pnpm package manager
  • Familiarity with TypeScript and React

Network Requirements

TaskTrove runs locally on http://localhost:3000 by default. For remote access:

  • Configure a reverse proxy (Nginx, Caddy, or similar)
  • Set up SSL/TLS certificates for HTTPS
  • Consider using services like Godoxy (see our other guide) for automatic certificate management
  • Ensure firewall rules allow appropriate traffic

Storage Considerations

TaskTrove uses JSON file-based storage in the data/ directory. Ensure:

  • Your storage device has adequate free space for your task database (typically <100 MB for normal usage)
  • Backups are automated or manual backups are performed regularly
  • Storage is reliable (consider NAS or external backup)

Installation Guide: Step-by-Step

TaskTrove offers multiple installation methods. Choose the one that best fits your environment.

Method 1: Docker Quick Start (Recommended for Most Users)

This is the fastest and most straightforward method. Docker handles all dependencies automatically.

Step 1: Install Docker

If Docker isn’t installed, download it from docker.com:

# Verify Docker installation
docker --version

Step 2: Run TaskTrove Container

Create a data directory and start the container:

# Create data directory for persistent storage
mkdir -p ~/tasktrove-data

# Run TaskTrove container
docker run -p 3000:3000 \
  -v ~/tasktrove-data:/app/data \
  -d \
  --name tasktrove \
  ghcr.io/dohsimpson/tasktrove

Breaking down the command:

  • -p 3000:3000 – Exposes port 3000 to access the web interface
  • -v ~/tasktrove-data:/app/data – Mounts your local directory for persistent data storage
  • -d – Runs the container in the background
  • --name tasktrove – Names the container for easy reference

Step 3: Access TaskTrove

Open your browser and navigate to: http://localhost:3000

You should see the TaskTrove login screen. Congratulations—TaskTrove is running!

Step 4: Verify Container Status

Check that the container is running:

docker ps | grep tasktrove

You should see your TaskTrove container listed.

Method 2: Docker Compose Setup (Best for Self-Hosting)

This method provides a complete, organized setup ideal for long-term self-hosting.

Step 1: Clone the Repository

git clone https://github.com/dohsimpson/TaskTrove
cd TaskTrove

Step 2: Navigate to Self-Hosting Directory

cd selfhost

This directory contains pre-configured Docker Compose files optimized for self-hosting.

Step 3: Review Configuration (Optional)

Edit docker-compose.yml to customize:

services:
  tasktrove:
    image: ghcr.io/dohsimpson/tasktrove:latest
    ports:
      - "3000:3000"  # Change first port if needed (e.g., 8080:3000)
    volumes:
      - ./data:/app/data  # Persistent data storage
    restart: unless-stopped
    environment:
      - NODE_ENV=production

Step 4: Start TaskTrove

# Start TaskTrove in background
docker-compose up -d

# View logs (optional)
docker-compose logs -f tasktrove

Step 5: Expected Folder Structure

After setup, your directory should look like:

TaskTrove/
├── selfhost/
│   ├── docker-compose.yml
│   ├── data/
│   │   └── data.json        # Your tasks stored here
│   └── backups/             # Backup directory
├── README.md
├── LICENSE.md
└── .gitignore

Method 3: Manual Setup (For Developers)

Perfect if you want to contribute to development or customize extensively.

Step 1: Clone the Repository

git clone https://github.com/dohsimpson/TaskTrove
cd TaskTrove

Step 2: Install Dependencies

TaskTrove uses pnpm for package management. Install it first:

# Install pnpm globally
npm install -g pnpm

# Install project dependencies
pnpm install

Step 3: Build the Project

# Build for production
pnpm build

The build process compiles TypeScript to JavaScript and prepares the application for running.

Step 4: Start TaskTrove

# Start the production server
pnpm start

The application will start on http://localhost:3000.

Step 5: Development Mode (Optional)

If you’re developing, use the development server:

# Start development server with hot reload
pnpm dev

Common Installation Issues and Troubleshooting

Port Already in Use

If port 3000 is already occupied:

# Docker: Change port mapping
docker run -p 8080:3000 -v ~/tasktrove-data:/app/data -d ghcr.io/dohsimpson/tasktrove

# Then access at http://localhost:8080

Data Directory Permission Denied

If you encounter permission errors:

# Fix permissions on data directory
sudo chown -R $USER:$USER ~/tasktrove-data
chmod 755 ~/tasktrove-data

Container Won’t Start

Check logs for detailed error messages:

docker logs tasktrove

# Or for Docker Compose
docker-compose logs tasktrove

Out of Memory Errors

Increase Docker’s memory allocation in Docker Desktop settings, or edit docker-compose.yml:

services:
  tasktrove:
    mem_limit: 1g

How to Use TaskTrove Effectively

Now that TaskTrove is running, let’s explore how to use it effectively.

TaskTrove Mobile View

Getting Started: Your First Task

Create a Quick Task

The fastest way to add a task:

  1. Press n key (or click the “New Task” button)
  2. Type your task: “Buy groceries”
  3. Press Enter
  4. Your first task appears in the list!

Create a Task with Due Date

TaskTrove’s natural language processing makes date entry intuitive:

  • “Buy groceries tomorrow” → Creates task due tomorrow
  • “Call mom next Friday at 2pm” → Creates task with specific date and time
  • “Weekly team meeting every Monday” → Creates recurring task
  • “Finish project in 3 days” → Calculates due date automatically

Understanding the Interface

Left Sidebar:

  • Your projects and task lists
  • Quick filters (Today, This Week, All Tasks)
  • Project creation and management

Main Area:

  • Displays tasks in your selected view (List, Kanban, or Calendar)
  • Shows task details when selected

Right Panel:

  • Task details editor
  • Subtasks management
  • Priority and due date settings
  • Comments and attachments

Keyboard Shortcuts for Power Users

ShortcutActionUse Case
nQuick add new taskRapid task entry
/Search tasks and projectsFinding specific tasks
SpaceMark task as complete/incompleteToggling task status
EscClose details panel or dialogsQuick navigation
jMove down in task listKeyboard navigation
kMove up in task listKeyboard navigation

Organizing with Projects and Labels

Create a Project:

  1. Click the “+” next to “Projects” in the left sidebar
  2. Enter project name (e.g., “Home Renovation,” “Q1 Goals”)
  3. Press Enter

Add Tasks to a Project:

  • Create a new task while a project is selected, or
  • Drag an existing task to the project in the sidebar

Color-Code with Labels:

  1. Select a task
  2. In the right panel, click “Add Label”
  3. Choose or create a colored label (e.g., “Urgent,” “Learning,” “Health”)
  4. Labels help you filter and organize at a glance

Multiple Views for Different Perspectives

List View (Default):

  • Best for: Viewing all tasks in one place, detailed task management
  • Shows: Task name, due date, project, labels, priority
  • Ideal for: Daily planning and task review

Kanban Board:

  • Best for: Project workflow visualization, progress tracking
  • Shows: Tasks grouped in columns (To Do, In Progress, Done, etc.)
  • Ideal for: Team collaboration and project management

Calendar View:

  • Best for: Due date planning, seeing task distribution over time
  • Shows: Tasks plotted on calendar by due date
  • Ideal for: Long-term planning and deadline management

Creating Recurring Tasks

TaskTrove automates repetitive tasks with powerful recurrence options:

  1. Create a task: “Water plants”
  2. In the right panel, click “Recurring”
  3. Select pattern: Daily, Weekly, Monthly, or Custom
  4. Set start and end dates if needed
  5. Save

Examples of recurring tasks:

  • Daily: “Morning meditation” every day at 7 AM
  • Weekly: “Team standup” every Monday at 9 AM
  • Monthly: “Bill payment” on the 1st of each month
  • Custom: “Project review” every 2 weeks on Tuesday

Subtasks for Complex Projects

Break down large tasks into manageable subtasks:

  1. Select a task and open its details
  2. Click “Add Subtask”
  3. Type the subtask (e.g., “Gather requirements,” “Design wireframes,” “Code implementation”)
  4. Each subtask can have its own due date and priority
  5. Completion of subtasks updates the parent task’s progress

Advanced Tips and Workflows

Workflow 1: Daily Planning Routine

Every morning, spend 5 minutes planning:

  1. Open TaskTrove and view “Today” filter
  2. Review today’s tasks using keyboard shortcut / to search
  3. Review this week’s calendar view to anticipate deadlines
  4. Add any new urgent tasks using n
  5. Prioritize your top 3 tasks using the priority system

Workflow 2: Project-Based Organization

For larger projects, create a project structure:

  1. Create a main project: “Website Redesign”
  2. Add sections within the project: Design, Frontend, Backend, Testing
  3. Create tasks under each section with specific subtasks
  4. Use Kanban view to track progress across stages
  5. Use labels like “Blocked,” “In Review,” “Ready” for status

Workflow 3: Weekly Review Session

Every Friday afternoon, conduct a weekly review (inspired by Getting Things Done methodology):

  1. View all incomplete tasks
  2. Move completed tasks to “Done”
  3. Reschedule overdue items to realistic dates
  4. Plan next week by reviewing upcoming tasks
  5. Archive completed projects or sections

Backup Your TaskTrove Data

Your tasks are valuable—backup regularly:

# Manual backup using command line
cp data/data.json ~/backups/tasktrove-backup-$(date +\%Y\%m\%d).json

# Using Docker
docker exec tasktrove cp /app/data/data.json /app/data/backup-$(date +%Y%m%d).json

# Or set up automated backups with cron
0 2 * * * cp ~/tasktrove-data/data.json ~/backups/tasktrove-$(date +\%Y\%m\%d).json

Exporting and Migrating Your Data

TaskTrove’s JSON-based storage makes migration simple:

# Backup your data.json file
cp ~/tasktrove-data/data.json ~/tasktrove-backup.json

# Move to new server
scp ~/tasktrove-backup.json user@newserver:/new/location/data.json

# Or restore to Docker container
docker cp ~/tasktrove-backup.json tasktrove:/app/data/data.json
docker restart tasktrove

Performance Optimization Tips

  • Archive Old Tasks: Move completed tasks from past months to separate projects
  • Limit Dashboard Size: Don’t load thousands of tasks in one view
  • Regular Backups: Prevent data loss from unexpected failures
  • Update Regularly: Keep TaskTrove updated for performance improvements and bug fixes
# Update Docker image
docker pull ghcr.io/dohsimpson/tasktrove
docker stop tasktrove
docker run -p 3000:3000 -v ~/tasktrove-data:/app/data -d ghcr.io/dohsimpson/tasktrove

# Or with Docker Compose
docker-compose pull
docker-compose up -d

Pros, Cons, and Alternatives

TaskTrove Advantages

  • Complete Privacy: Your data stays on your servers—full stop. No tracking, no data sales, no surprises.
  • Cost-Free: No monthly subscriptions or per-user licensing. Deploy once, use forever.
  • Customizable: Open-source code means you can modify, extend, or optimize TaskTrove for your specific needs.
  • Natural Language Processing: “Tomorrow at 3pm” is simpler than clicking through date pickers.
  • Modern Interface: Clean, intuitive design works seamlessly on desktop, tablet, and mobile.
  • Multiple Views: Switch between List, Kanban, and Calendar perspectives instantly.

TaskTrove Limitations

  • Self-Hosting Required: Unlike Todoist or Asana, you must manage your own server infrastructure. This requires technical knowledge and system administration.
  • Smaller Community: Being newer and open-source means fewer third-party integrations compared to enterprise competitors.
  • Learning Curve: While simple for basics, advanced features require some time to master.
  • Limited Mobile App: Currently best on desktop/web; native mobile apps aren’t available yet.

Comparison with Popular Alternatives

FeatureTaskTroveTodoistAsanaMicrosoft To Do
PrivacyCompleteCloud-basedCloud-basedCloud-based
CostFree$3-5/month$10+/monthFree (limited)
Self-HostedYesNoNoNo
Natural LanguageYesYesLimitedLimited
Recurring TasksYesYesYesBasic
Multiple ViewsYesYesYesYes
Mobile AppsWeb-basedYesYesYes
Data ExportJSONLimitedLimitedLimited

When to Choose TaskTrove:

  • You prioritize privacy and data ownership
  • You prefer self-hosted solutions
  • You want zero ongoing costs
  • You’re comfortable managing your own server

When to Choose Alternatives:

  • You need native mobile apps with advanced features
  • You prefer cloud-based with automatic backups
  • You need enterprise integrations and support
  • You prefer vendor-managed infrastructure

Conclusion

TaskTrove represents a paradigm shift in how we think about task management. In a world of surveillance capitalism and endless SaaS subscriptions, TaskTrove offers a refreshing alternative: powerful task management software that respects your privacy, costs nothing, and stays in your control.

Whether you’re a developer seeking customization options, a remote worker tired of cloud platforms, or simply someone who values privacy and simplicity, TaskTrove delivers. With natural language task creation, multiple viewing perspectives, recurring task automation, and complete data portability, it’s a genuinely modern task manager built for people who want better.

Next Steps

1. Install TaskTrove Today
Use the Docker Quick Start method to get running in minutes. Your first task awaits!

2. Star the Repository
Show your support and help others discover TaskTrove by starring the project at github.com/dohsimpson/TaskTrove.

3. Contribute to the Community
Have ideas for improvements? TaskTrove welcomes contributions from developers and users alike. Check the repository’s contribution guidelines.

4. Share Your Workflow
Found an effective workflow? Join the TaskTrove community and share how you’re using it. Your experience might inspire other users.

The future of task management is self-hosted, private, and open. Welcome to TaskTrove—where your tasks finally belong to you.

Resources and Related Reading

Official Links:

Related Tools and Guides:

Additional Resources:

You may also like

Subscribe
Notify of
guest

0 Comments
Newest
Oldest Most Voted
Inline Feedbacks
View all comments