Program portfolio board for all your Coda project trackers

Pull every project row scattered across your Coda docs into one fast screen, with red amber green rollups and live delivery signal from Linear.

App
CodaLinearSlack BotOperationsData SyncAI Reports
PromptCreate

Build me a program portfolio board that pulls every project tracker row scattered across my Coda docs into one fast screen, so my weekly portfolio review stops being a tour of ten slow docs. I am an ops lead running a weekly review over projects that live in many separate Coda docs, each with its own column naming.

First run setup. On first open, walk me through picking which Coda docs count as project trackers. Use List Available Docs to show my docs and page through the full result set with the page token rather than showing only the first page. Coda limits doc listing to roughly 4 requests every 6 seconds, so page politely, cache what you fetch, and do not refetch on every render. Once I pick docs, use List Tables to show the tables and views in each one and let me choose the tracker table per doc.

Column mapping. Every doc names its columns differently, so for each chosen table use List Columns and let me map which column holds status, owner, target date and next step. Also let me optionally map a column that stores a Linear team key or label. Persist this mapping as app state keyed by doc and table so it is remembered on every later open, and give me a settings screen to revisit and remap when a doc changes. Store Coda doc, table, column and row IDs rather than names, because names are user editable and would silently break the mapping.

Status rollup mapping. Status wording differs per doc, where one says On Track, another says Green and another says Healthy. So part of setup is mapping each distinct status value found across the chosen tables to red, amber or green. Prefill that mapping with a sensible guess from the wording and let me correct it, and surface any new unmapped status value that shows up later instead of dropping it into an unknown bucket.

Main view. The main screen is one consolidated table of every project across all mapped docs, read with List Table Rows per table and paged through fully. Group rows by rolled up status with a red, amber and green count summary at the top. Every row shows project name, status, owner, target date, next step and which Coda doc it came from. Let me sort and filter by owner, doc, status and target date, and highlight anything already past its target date.

Linear delivery signal. For projects whose mapped row stores a Linear team key or label, pull live delivery signal with List Issues and aggregate it yourself. Our Linear catalog has no projects or initiatives operation, so match Coda project rows to Linear work by team, label or a stored identifier only, never by fetching a Linear project object. Filter issues by that team or label, page through with cursor pagination, and show open versus completed issue counts plus a count of anything overdue next to the reported Coda status. Make the disagreement the headline: when a project reports green but its engineering work has stalled or is overdue, flag that row visibly so it cannot be skimmed past during the review.

Inline editing and write back. Let me edit status, owner, target date and next step inline in the board, writing straight back to the source Coda row with Update Row. Coda mutations are accepted asynchronously and return a request id, so after each edit poll Get Mutation Status until it reports completed before showing the row as saved. Show the row as saving until then, and if the mutation fails or times out, show the edit as failed, restore the previous value and offer a retry. Never show a saved state on the basis that the write was merely accepted.

Slack review summary. Give me a button that posts a formatted review summary to a Slack channel I choose using Send a Message, covering the red, amber and green counts, projects that changed status since the last review, the overdue list, and the projects where Linear signal disagrees with the reported status. The same action should DM each owner their own projects: resolve the owner to a Slack user with Look Up User by Email, open a direct message with Open a Conversation, then send their personal list with Send a Message. Owners that cannot be resolved to a Slack user get listed in the channel summary rather than silently dropped.

Performance and resilience. The whole point of this app is that the reading experience does not have to be as slow as the docs. Fetch Coda rows in the background, cache the consolidated set, render the board as soon as data is available, and show a last refreshed time with a manual refresh button. Respect Coda rate limits with backoff when a request is throttled instead of hammering, and if one doc fails to load, still show the rest of the portfolio with a clear note about which source is missing.

What does this prompt do?

  • Brings every project row from the Coda docs you choose into a single table grouped by status, so your weekly review is one screen instead of a tour of ten slow docs.
  • Shows a red, amber and green rollup at the top, marks which doc each project came from, and highlights anything past its target date.
  • Adds live delivery signal from Linear next to the reported status, so you can spot a project that says green while the engineering work has stalled.
  • Lets you edit status, owner, target date and next step right in the board, writes each change back to the original Coda row, and posts a review summary to Slack with a personal list for every owner.

What do I need to use this?

  • A Coda account with the project tracker docs you want to include
  • The name of the column in each tracker that holds status, owner, target date and next step (they can be different in every doc)
  • A Slack workspace, plus a channel for the review summary
  • A Linear account if you want delivery signal next to your project status (optional)

How can I customize it?

  • Choose which docs and tables count as project trackers, and remap the columns any time a doc changes
  • Set which status wording in each doc rolls up to red, amber and green
  • Pick the Slack channel for the summary and decide whether owners also get a direct message with just their projects

FAQs

Do all my Coda docs have to use the same column names?
No, and that is the main reason this exists. On first open you pick the docs and tables that count as project trackers, then tell the board which column holds status, owner, target date and next step in each one. It remembers the mapping, so every doc can keep naming things its own way.
Will editing a project in the board change my real Coda doc?
Yes. Edits write straight back to the original row in the source doc. Coda applies changes in the background, so the board waits for confirmation that the change actually landed before it shows the row as saved rather than assuming it worked.
Do I need Linear for this to work?
No. Linear is optional. If a project row stores a Linear team or label, the board shows open and completed work counts and anything overdue next to the reported status. Projects without that stay on the board with their Coda status only.
Will this slow my Coda docs down even more?
No. The board reads your trackers and keeps its own fast copy for the review, so browsing, grouping and filtering all happen outside Coda. You get a refresh button and a last updated time so you always know how current the view is.
Can I see which doc a project came from?
Yes. Every row shows its source doc, and you can filter or group by doc, owner, status and target date. That keeps the consolidated view honest when two docs track similar looking projects.

Related templates

Share of voice dashboard for your brand and competitors

See how your brand's news coverage and sentiment stack up against four competitors, then let an assistant write the weekly report for you.

GDELT
Notion
Slack Bot
App
Approval war room for every social post awaiting sign-off

One screen showing every social post waiting on approval, sorted by deadline, so reviewers can approve or reject without leaving the page.

Hootsuite
Slack Bot
App
Turn champion job changes into new pipeline in Attio

Every Monday, find the past champions and closed-won contacts who changed jobs, update Attio, and get the moves worth chasing in Slack.

Boomerang
Attio
Slack Bot
Agentic Task
Collect social post requests and schedule them in Hootsuite

Staff submit what happened, your social manager edits the copy, picks the accounts and puts it on the calendar without a single spreadsheet.

Hootsuite
Slack Bot
General Input Database
App
Voice agent QA review board for your Hume EVI calls

Open one board each morning, see which voice calls went badly, replay the exact moment the caller got frustrated, and file the fix.

Hume
Linear
Slack Bot
App
Clear your Guru verification backlog in one weekly app

A personal queue of every overdue Guru card, sorted by how late it is, with one-click verify, reassign, comment, and an agent that drafts the refresh for you.

Guru
Slack Bot
App

Stop touring ten slow docs to run one portfolio review.

Bring every Coda project tracker into a single board and see where delivery has quietly stalled.