Single-user · self-hosted · open source

Project management that gets out of your way.

IndieWork is a calm, single-person tool for solo indie devs. No assignees, no notifications, no team ceremony — just your projects, two ways to group them, and an inbox for everything else.

Bring your own Postgres. docker compose upand it's yours.

How it works

Built around how a solo dev actually works.

Two independent axes instead of rigid folders. A frictionless inbox so ideas never block on triage. And a clear split between what's stuck now and what already happened.

Module ⟂ Milestone

Group tasks by sub-system or by phase — independently. A task belongs to both, and you flip between the two views with one toggle.

Module Milestone

Capture now, sort later

Dump an idea into the Inbox with zero required fields — from the web, a REST call, or an AI agent. Triage it into a project when you're ready.

Quick capturePress c

What's blocking ≠ what happened

A pinned status note always answers “where is this right now?”. The timelinebelow keeps the running log of what you've tried. Two different needs, never blurred together.

Current state

Waiting on the upstream API key before I can finish auth.

6/12 tried approach A — failed on rate limits
6/13 switched to a queue, looking better

One core, three front doors

Drive it from wherever you are.

Every surface calls the same service layer — so the web app, a shell script, and an AI agent all do exactly the same thing, consistently.

Web UI

A fast, keyboard-friendly app with a slide-in detail panel and command palette.

REST API

Create tasks from Telegram, your editor, or a cron job. POST /api/v1/tasks.

MCP server

Let an AI agent capture, update, and log progress in natural language.

Yours, end to end

Self-host it in a minute.

No accounts, no SaaS, no telemetry. One password guards the door; your data lives in your Postgres. MIT licensed — fork it, change it, ship it.