> ## Documentation Index
> Fetch the complete documentation index at: https://beebole.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Gantt chart: scheduling tasks on a timeline

> Schedule tasks on Beebole's Gantt chart — drag bars to set dates, link dependencies, customize columns, and spot overload with the workload heatmap.

Beebole's Gantt chart displays your [tasks](/help/documentation/planning) as bars on a timeline, so you can see start and end dates, sequence work with dependencies, and spot scheduling overload at a glance. It is one of the three views of the **Planning** page, alongside the [Kanban board](/help/documentation/kanban) and the [Staffing view](/help/documentation/staffing) — all show the same tasks, so a change in one view appears instantly in the others.

***

## Opening a Gantt view

<Steps>
  <Step title="Open the Planning page">
    Click **Planning** in the sidebar. Pick the planning you want at the top of the page.
  </Step>

  <Step title="Select a Gantt view">
    Click a Gantt view tab above the task list. To create another one, click **Add a view** and select **Gantt chart** — each view keeps its own columns, grouping, and scale.
  </Step>
</Steps>

***

## Reading the timeline

Each task with dates appears as a horizontal bar running from its start date to its end date, in the task's color. Task names show their full project and task path, so tasks with similar names are easy to tell apart. A vertical line marks today, and the timeline extends as you scroll — right into the future, left into the past — with a **Today** button to jump back to the current date.

Hover any bar for a rich tooltip: the full dates, the task name, its project with parents, the owner, the planned hours or days and allocation percentage, plus a hint about what **⌘** does on the chart.

### Choosing the period

Open the **⋯** menu on the active view tab and use **Period** to choose how the timeline runs:

* **Infinite by day** or **Infinite by week** — the endless scrolling timeline, at day or week granularity.
* A fixed **week**, **month**, **quarter**, or **year** — the chart fits that window to your screen and lists only the tasks that fall inside it (parents and recurring series are kept).

With a fixed period, tasks that start before or end after the window are drawn cut off, with a dashed edge and a chevron — click it to jump to the hidden start or end date. Cut edges can't be resized, since the date they would move isn't on screen.

<Info>
  Tasks without dates still appear as rows in the task list — they just have no bar yet. See below for how to schedule them directly on the timeline.
</Info>

***

## Scheduling tasks on the timeline

* **Give a task dates** — In the row of a task that has no dates yet, click the timeline to create a bar spanning that cell, or click and drag to draw the exact period you want. Dragging on the row of a task that already has dates scrolls to its bar and flashes it instead.
* **Move a task** — Drag its bar left or right. The duration is preserved.
* **Resize a task** — Drag the left or right edge of the bar to change the start or end date.
* **Work on several tasks at once** — Select several bars, then drag them together to reschedule the whole group in one move, hold **⌘** (Alt on Windows/Linux) while dragging to drop dated copies, or grab any selected bar's edge to shift every selected bar's dates by the same amount. Each batch is a single undo step.

While you drag, Beebole shows the new dates live — and tasks linked by [dependencies](#task-dependencies) follow the drag on screen before you drop. Changes are saved automatically when you release the bar.

If the task's planned time no longer fits the new period, the task detail panel flags the overflow and offers one-click fixes — see [scheduling dates and planned time](/help/documentation/planning#scheduling-dates-and-planned-time).

***

## Task dependencies

Dependencies sequence tasks: a dependent task is expected to follow the tasks it depends on. Dependency links are drawn between the bars on the timeline, color-matched to the tasks at each end, and they follow the bars live while you drag. Dependencies are managed in the **Dependencies** column — add it from the **Columns** menu if your view doesn't show it.

### Adding dependencies

<Steps>
  <Step title="Click the task's Dependencies field">
    Click the **Dependencies** cell of the task that should come after. This activates dependency mode.
  </Step>

  <Step title="Pick its dependencies">
    Click the task it depends on directly in the list — hold **⌘** to select several — or type the row numbers (from the **Row #** column) into the field, separated by commas.
  </Step>

  <Step title="Finish">
    Click elsewhere or press **Esc** to leave dependency mode. Arrows now link the bars on the timeline.
  </Step>
</Steps>

To remove a dependency, edit the row numbers in the **Dependencies** field. A task cannot depend on itself.

### How dependent tasks move

The **Dependent tasks movement options** setting — in the **⋯** menu on the active view tab — controls what happens to dependent tasks when you move a task they depend on:

| Option       | Behavior when the predecessor moves                                      |
| ------------ | ------------------------------------------------------------------------ |
| **Free**     | Dependent tasks stay where they are                                      |
| **Pushing**  | Dependent tasks are pushed later when the predecessor would overlap them |
| **Together** | Dependent tasks move along with the predecessor, keeping their distance  |

The setting applies to the whole planning.

***

## Planned time

The **Planned** column shows each task's planned work. The small button in the column header toggles the unit (**Planned in hours or days**). A parent task shows the total planned time of its subtasks.

Planned time is what the [workload heatmap](#workload-heatmap) compares against each person's capacity, derived from their [work schedule](/help/documentation/work-schedule) minus their absences.

***

## Workload heatmap

When the chart is grouped — for example by **Owner** — each group header row displays workload bars: one bar per period (day or week, following the current **Period** granularity). Without grouping, a single summary row shows the same information for everyone.

* **Bar height and shade** — The fuller and darker the bar (in the app's accent color), the closer that group's planned time is to its available capacity for the period.
* **Over capacity** — A full bar with a number on it signals overload: on a group row the number is the overflow (in hours or days, following the **Planned** unit); on the summary row it is the count of overloaded people.
* **Hover for details** — A tooltip shows the period's planned effort against capacity (for example `Effort: 32h / Capacity: 40h (80%)`) and lists each overloaded person with their own numbers.

Use the heatmap to spot the weeks where an owner is overbooked, then move bars or planned time to rebalance.

***

## Columns

The left panel of the Gantt chart is a configurable table. Open the **⋯** menu on the active view tab and hover over **Columns** to show or hide columns. **Row #** and **Task Name** are always visible — a new Gantt view starts with just those two.

| Column               | What it shows                                    |
| -------------------- | ------------------------------------------------ |
| **Row #**            | Sequential row number, used to type dependencies |
| **Task Name**        | The task name and hierarchy controls             |
| **Dependencies**     | Row numbers of the tasks this task depends on    |
| **Dates**            | The task's start and end dates                   |
| **Owner**            | The task's owner                                 |
| **Potential owners** | The people or tags the task is assigned to       |
| **Planned**          | Planned time, in hours or days                   |
| **Billing**          | Billing amount indicator for the task            |
| **Cost**             | Cost amount indicator for the task               |
| **Status**           | The task's current status                        |
| **Tags**             | Tags applied to the task                         |

In addition, one column per [project category](/help/documentation/projects) is available, showing the projects from that category linked to each task.

***

## Row grouping

Open the **⋯** menu on the active view tab and hover over **Group by** to restructure the list without changing any task data:

* **Owner** — One group per task owner
* **Status** — One group per status
* **Project categories** — Group by a level of any project category
* **Tag categories** — Group by a level of any [tag](/help/documentation/tags) category

Select **None** to remove grouping. With a grouping active, **Show all groups** also displays empty groups — useful to see owners or statuses that currently have no tasks.

***

## Saved views

The tabs above the task list are saved views. Each Gantt view stores its own **Period**, **Columns**, and **Group by** settings, plus its filters.

* **Create** — Click **Add a view**, then **Gantt chart**.
* **Rename** — Double-click the tab (or long-press it on a touch screen) and type the new name, or use **Rename** in the tab's **⋯** menu.
* **Duplicate or delete** — Use **Duplicate** and **Delete** in the **⋯** menu. The last remaining view cannot be deleted.

***

## Filtering

Use the **Filters** button to narrow the chart — by task, status, owner, potential owner, project, or [tags](/help/documentation/tags) — with the active filter count shown on the button. Filters can be switched off and back on without losing them: the button toggles them rather than clearing them.

<Tip>
  From an open task's detail panel, the **Show in the chart** button in the top bar jumps straight to the task's position in the Gantt.
</Tip>

***

## Keyboard navigation

With the Gantt chart focused, you can work without the mouse:

| Key                           | Action                                                 |
| ----------------------------- | ------------------------------------------------------ |
| **Arrow Down** / **Arrow Up** | Move the selection to the next or previous row         |
| **Arrow Right**               | Expand the selected task and move into its first child |
| **Arrow Left**                | Collapse the selected task, or move up to its parent   |
| **Enter**                     | Open or close the detail panel of the selected task    |
| **Tab**                       | Make the selected task a subtask of the task above it  |
| **Shift+Tab**                 | Move the selected subtask up one level                 |
| **⌘+A**                       | Add a new task — a subtask if a task is open           |

<Info>
  Keyboard navigation works when the chart has focus. Click anywhere in the task list first if the keys are not responding.
</Info>

***

## Related content

<CardGroup cols={2}>
  <Card title="Tasks" icon="list-check" href="/help/documentation/planning">
    What tasks are in Beebole — creating, importing, assigning, and tracking time on them.
  </Card>

  <Card title="Kanban board" icon="square-kanban" href="/help/documentation/kanban">
    Move the same tasks through status columns with drag and drop.
  </Card>

  <Card title="Work schedules" icon="calendar" href="/help/documentation/work-schedule">
    Define the working hours that determine each person's capacity in the heatmap.
  </Card>
</CardGroup>

## Frequently asked questions

<AccordionGroup>
  <Accordion title="Does Beebole's Gantt chart have a month view?">
    No. The Gantt timeline runs **Infinite by day** or **Infinite by week**, selected under **Period** in the view tab's menu — the week granularity is the one to use for a long-range overview. The same menu can also lock the view to a fixed week, month, quarter, or year fitted to your screen.
  </Accordion>

  <Accordion title="How do I create a dependency between two tasks?">
    Click the **Dependencies** cell of the task that should come second, then click the task it depends on (hold **⌘** to pick several) or type its row number. Press **Esc** to finish. Beebole draws an arrow between the bars.
  </Accordion>

  <Accordion title="What happens to dependent tasks when I move their predecessor?">
    It depends on the category's **Dependent tasks movement options**, set from the **Dependencies** column header: **Free** leaves dependents in place, **Pushing** pushes them later when the predecessor would overlap them, and **Together** moves them along with it.
  </Accordion>

  <Accordion title="Can I have several Gantt views with different columns?">
    Yes. Click **Add a view** and select **Gantt chart**. Each saved view in Beebole keeps its own column selection, grouping, scale, and filters, so you can switch between setups without reconfiguring anything.
  </Accordion>

  <Accordion title="Do changes in the Gantt chart affect the Kanban board?">
    Yes. Both views display the same tasks from the same category. Dates set on the Gantt timeline, status changes, and renames are immediately visible on the Kanban board, and vice versa.
  </Accordion>
</AccordionGroup>
