# Plans A plan is where a note turns into work you can track: task lists with status columns, labels, due dates, and three views that all share the same data. When a project has more moving parts than a checklist can hold, it belongs in a plan. Each task carries real structure (a status, a due date, a label), not just a line of text. That's what lets the same tasks become a board, a calendar, and a filtered list without you maintaining three copies. ## When to reach for a plan Reach for a plan when a note has turned into things you need to track, sequence, or finish: - project task lists and launch checklists - a quarterly roadmap with themes and owners - a recurring operational routine - anything where status, due dates, or ordering matter ## Anatomy of a task | Field | Used for | |---|---| | **Title** | The thing to do | | **Status** | Which column it's in: To Do, Doing, Done, or your own | | **Label** | A single colour-coded tag | | **Due date** | An optional date (`YYYY-MM-DD`) plus an optional time (`HH:mm`) | | **Description** | Rich Markdown: checklists, links, callouts, images | | **Repeat** | A daily, weekly, monthly, or yearly rule that rolls the task forward when you finish it | ### Repeating tasks A repeat turns a one-off into a routine. Give a task a due date and a rule (daily, weekly, monthly, or yearly), and Undra keeps it going for you. The key thing to understand is what completing it does. When you mark a recurring task done, it doesn't close out and disappear. Instead the *same* task rolls forward: its due date moves to the next occurrence and it goes back to unfinished. So a "Weekly review" you tick off on Friday is sitting in To Do again next Friday, on the calendar on its new date. There's only ever one card to look at, not a pile of finished copies. How the next date is picked depends on the rule and on the due date: - The next occurrence is computed from the rule (every day, every two weeks on Mon/Wed/Fri, the second Monday of each month, and so on), so a due date is required for a task to repeat. - The next date can follow the previous due date (a fixed cadence that stays on schedule no matter when you finish) or follow the day you actually completed it (so finishing late pushes the whole series later). Pick whichever matches the habit. - A repeat can end. Set it to stop after a certain number of occurrences or on an end date, and the last completion finishes the task for good instead of scheduling another. ## Three views, one set of tasks List, **Board**, and **Calendar** are three windows onto the *same* tasks, not separate copies. Walk one task through them and the point makes itself. Add "Draft the launch email" in List view and give it a due date. Switch to Board and it's a card sitting in **To Do**. Start the work and drag the card into **Doing**, then into **Done** when it's finished: its due date and label ride along, because you're moving the one task, not retyping it somewhere else. Open Calendar and the same task is already there, parked on its due date, ready to drag to a new day if the plan slips. Nothing syncs because nothing was ever duplicated. Switch views from the top bar whenever the work calls for a different shape: List to scan and filter, Board to see flow, Calendar to see timing. ## Labels keep their meaning Labels are global within a plan: rename or recolour one and every task using it updates at once. A few systems that work well: - `Launch` / `Blocked` / `Bug` for lifecycle - `P0` / `P1` / `P2` for priority - `Design` / `Eng` / `Product` for function ## Connect a plan to everything else - **Tasks link out.** A task description can `[[wikilink]]` to any item: the brief, a meeting note, a spec. Undra brings the task back into focus when you return. - **Detail notes.** Attach a [note](/docs/workspace/notes/) to a plan for the narrative behind the tasks, and the plan header links straight to it. - **Plans live elsewhere.** Embed a plan on a [canvas](/docs/workspace/canvas/) so it stays in sync, or surface its open tasks on a [dashboard](/docs/workspace/dashboards/) with a live query. ## Common workflows - **A launch plan.** Tasks in Board view, labelled by team, due dates on the calendar, each task linking to its spec note: the whole launch in one place. - **A quarterly roadmap.** Themes as tasks, an owner label on each, the brief attached as a detail note. - **A recurring sprint.** Repeating tasks for the rituals, and a `Blocked` label to make risk visible at a glance. ## Under the hood Plans are `.uplan` files: a short YAML header for plan-level metadata, then a JSON body (`undra_plan_v1`) holding the tasks (`entries`), the board columns and per-view settings (`views`), and the `labels`. It's structured but readable, and versionable in Git like everything else. Here's the real **Q2 roadmap** plan from the [interactive demo](/demo/), trimmed to a few entries: ```file="Q2 roadmap.uplan" --- id: 30XalbQN type: plan title: Q2 roadmap tags: [roadmap, product] created_at: "2026-04-01T12:00:00.000Z" updated_at: "2026-04-29T03:02:25Z" importance: 2 --- { "version": "undra_plan_v1", "entries": [ { "id": "q2-1", "title": "Scope themes with leadership", "status": "done", "order": 0 }, { "id": "q2-2", "title": "Theme 1: First-run wow (Phoenix)", "status": "doing", "order": 1, "dueOn": "2026-05-07", "labelId": "lbl-theme" }, { "id": "q2-4", "title": "Theme 3: Mobile reader", "status": "todo", "order": 3, "dueOn": "2026-06-15" } ], "views": { "showCompleted": true, "board": { "columns": [ { "id": "todo", "title": "To Do", "role": "todo" }, { "id": "doing", "title": "Doing", "role": "doing" }, { "id": "done", "title": "Done", "role": "done" } ] } }, "labels": [ { "id": "lbl-theme", "name": "Theme", "color": "#6366F1" } ] } ``` :::tip Priority sorts your whole workspace A plan's importance (1 to 4) feeds the explorer's priority sort, so your most important plans rise to the top alongside the notes and canvases in the same folders. ::: ## Where to go next - **[Notes](/docs/workspace/notes/)**: the narrative a plan grows out of. - **[Canvas](/docs/workspace/canvas/)**: lay plans and notes out in space. - **[Dashboards](/docs/workspace/dashboards/)**: surface what's due across every plan.