All templates

Tandem

A project tracker where coding agents take issues beside people. Issues as a list or a board, triage, two-week cycles, projects on a timeline and insights, with agents that ask when they’re stuck and hand back a change to approve.

Tandem's Issues page
(opens in a new tab)
Pages
9Inbox, Issues, Triage, Cycle, Projects, Insights, Agents and Settings, with a page for each issue, project and agent.
Roles
2Admin and member.
Component libraries
3Base UI, Radix UI or React Aria.
Icon libraries
5From Lucide to Remix Icon, swapped on install.

Pages

Each opens in the live preview, on the sample data.

What you get

The whole app as source in your project, ready to wire to your own data.

  • Route files for Next.js

    Each page is a server component that loads its data, with a loading state while it does. A page with an agent at work reads itself again every few seconds.

  • One sample API

    lib/tandem/api holds typed async functions over a sample team’s issues, cycles, projects and agents. Rewrite their bodies for your own data and the pages stay as they are.

  • Agents as delegates

    Hand an issue to a coding agent and follow its session step by step. It asks when it’s stuck, and hands back a change to merge or close. Connect your own agent runner where the sample plays its steps.

  • Writes that work

    Edit, triage, snooze and delegate issues, close a cycle, post a project update, and manage members, agents, labels and integrations, with Undo wherever a change can be undone.

  • Made of the blocks

    Every part is a Dashboardblocks block that installs with it, in your shadcn style, component library and icon set.

Install Tandem

Tandem comes with All-Access and installs with the shadcn CLI, in three steps.

Installation guide
  1. Add the registry

    Add @dashboardblocks-pro to the registries in components.json. Keep the www: a redirect to another host drops the token.

    components.json
    {
      "registries": {
        "@dashboardblocks": "https://www.dashboardblocks.com/r/{style}/{name}.json",
        "@dashboardblocks-pro": {
          "url": "https://www.dashboardblocks.com/r/pro/{style}/{name}.json",
          "headers": {
            "Authorization": "Bearer ${DASHBOARDBLOCKS_TOKEN}"
          }
        }
      }
    }
  2. Add your token

    Create a token on your account page and put it in .env.local, next to components.json. In CI, set it as a secret instead.

    Create a token
    .env.local
    DASHBOARDBLOCKS_TOKEN=dbp_…
  3. Install Tandem

    Run it in a new Next.js 16 project from shadcn create. It adds every page and the blocks they use. Then run npm run dev and open /issues.

    Terminal
    npx shadcn@latest add @dashboardblocks-pro/tandem-next --overwrite