tada

Docs

Concepts

tada is a kanban board β€” and then it is a kanban board again, one level down. Understanding that nesting is most of understanding tada. The vocabulary below is small and deliberate: the same words appear in the board UI, in the MCP tools your agent calls, and in the schema the frontend, API, and MCP server all share.

The board is a board of Stories

The Board View is the kanban board you would expect: four columns, and a card for each Story. A Story is one unit of work. Its column is its status, and dragging it to another column is how its status changes.

πŸ’‘Idea1
330✨
Offline board cache
πŸ“‹Planned1
348πŸ›
Tag filter drops on reload
🚧In Progress1
319✨
Marketing site at the apex
4 tasks
βœ…Done1
293🧹
Per-story optimistic concurrency
The Board View. Four lanes, one card per Story β€” this is the app's own board UI, not a drawing of it.

Each Story is itself a board of Tasks

Open a Story and you get the Story Detail View β€” which is another kanban board, with the same four columns, whose cards are that Story's Tasks. A Task is a unit of work inside a Story, and it moves through those columns exactly the way its parent Story moves through the outer ones.

Idea1
4Decide the build step
Planned1
3Sitemap entries
In Progress1
2Docs pages
Done1
1Hero and board preview
The same Story, opened. Its four Tasks sit in the same four columns β€” a board inside the card you just saw in the In Progress lane above.

That is the whole shape: a board inside a board. The outer board's items are Stories; each Story's inner board holds Tasks. One vocabulary, applied at two levels β€” which is why the four statuses below mean the same thing wherever you meet them.

Status β€” the four columns, at both levels

Every item, Story or Task, sits in exactly one of these. For a Story it is a Board View lane; for a Task it is a column in its Story's detail view.

  1. Idea
  2. Planned
  3. In Progress
  4. Done

The two levels move independently: a Story can be In Progress while some of its Tasks are still Planned β€” which is exactly what the figures above show.

Type β€” what kind of work a Story is

Chosen by the nature of the work, not by which part of the app it touches. Only Stories have a type β€” a Task takes its meaning from the Story it belongs to, which is the one place the two levels are not symmetrical. There are four:

Feature

New capability a user can see.

Bug

Something behaves differently than it should.

Chore

Maintenance, refactor, or docs β€” no user-visible change.

Infrastructure

Hosting, CI, tests, tooling.

Type and status are independent: a Bug in active development is type Bug, status In Progress. Nothing about being a Bug implies which column it sits in.

β€œTask” always means a unit of work belonging to a Story β€” never a Story itself. The maintenance Story type is called Chore precisely so the two words never collide.