Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion docs-mintlify/docs.json
Original file line number Diff line number Diff line change
Expand Up @@ -115,7 +115,8 @@
"docs/explore-analyze/dashboards/widgets/text",
"docs/explore-analyze/dashboards/widgets/controls",
"docs/explore-analyze/dashboards/widgets/ai-summary",
"docs/explore-analyze/dashboards/widgets/layout"
"docs/explore-analyze/dashboards/widgets/layout",
"docs/explore-analyze/dashboards/widgets/container"
]
},
"docs/explore-analyze/dashboards/styling",
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
---
title: Grid container
description: Group widgets into a nested grid so you can arrange, resize, and move them together on a dashboard.
---

<Warning>

The grid container widget is currently in preview, and its behavior may still change. Reach out to the [Cube support team](/admin/account-billing/support) to activate it for your account.

</Warning>

A grid container is a widget that holds other widgets in its own grid. Use it to group related tiles — a chart with its controls, a section of KPIs, a labelled block of text and visuals — so they can be arranged, moved, and resized as a unit. Containers can be nested, letting you build structured, multi-section layouts on a single dashboard.

## Adding a grid container

In the [dashboard builder][ref-workbooks], open the **Add Widgets** menu in the toolbar and choose **Grid**. The container is added with an empty inner grid, and its settings panel opens so you can size the grid right away.

<Steps>
<Step>
Open the **Add Widgets** menu in the toolbar and choose **Grid**. If [drag-to-place](/docs/explore-analyze/dashboards/widgets) is enabled for your account, you can instead drag the **Grid** entry to drop the container exactly where you want it.
</Step>
Comment on lines +16 to +21

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Two small artifacts from applying my earlier suggestion:

  1. The lead-in paragraph and Step 1 now say the same thing. Line 16 ("open the Add Widgets menu in the toolbar and choose Grid") is repeated verbatim as the first step. Sibling pages either use a lead-in or a <Steps> block, not both with duplicate content.
  2. Step 1 has no title. Steps 2 and 3 do, and every <Step> elsewhere in the dashboards docs (controls.mdx:49,52,55) is titled — an untitled step renders with a blank heading next to two titled ones.

Folding the lead-in's outcome into the step body fixes both:

Suggested change
In the [dashboard builder][ref-workbooks], open the **Add Widgets** menu in the toolbar and choose **Grid**. The container is added with an empty inner grid, and its settings panel opens so you can size the grid right away.
<Steps>
<Step>
Open the **Add Widgets** menu in the toolbar and choose **Grid**. If [drag-to-place](/docs/explore-analyze/dashboards/widgets) is enabled for your account, you can instead drag the **Grid** entry to drop the container exactly where you want it.
</Step>
<Steps>
<Step>
In the [dashboard builder][ref-workbooks], open the **Add Widgets** menu in the toolbar and choose **Grid**. The container is added with an empty inner grid, and its settings panel opens so you can size the grid right away. If [drag-to-place](/docs/explore-analyze/dashboards/widgets) is enabled for your account, you can instead drag the **Grid** entry to drop the container exactly where you want it.
</Step>

Fix this →

<Step title="Set the inner grid size">
In the settings panel that opens, set the number of **Columns** and **Rows** for the container's inner grid. It starts as a 2 × 2 grid.
</Step>
<Step title="Add widgets into it">
Drag charts and other widgets straight into the container — see [Adding widgets to a container](#adding-widgets-to-a-container) below.
</Step>
</Steps>

## The inner grid

Each container has its own grid, independent of the dashboard's grid. The **Columns** and **Rows** you set describe that inner grid, and it fills the whole container surface — so the container's cells resize with it rather than being tied to the dashboard's column width. Grid lines are shown while you're editing so you can see where widgets will land.

The grid grows a new row automatically when a widget is placed or resized past the current bottom edge, so you never run out of room while arranging.

## Adding widgets to a container

You can add most widget types to a container — charts, text, AI summaries, controls, spacers, and dividers, as well as other grid containers.
Comment thread
mngr marked this conversation as resolved.

- **From the toolbar** — drag a widget from the **Add Widgets** menu or the **Add Controls** group and drop it directly onto the container, in one step.
- **Charts** — pick a report from the **Charts** picker and drop it onto the container.
- **Move an existing widget in** — drag a widget already on the dashboard into the container to move it inside.

Dropped widgets snap to the container's grid cells, and you can resize and rearrange them afterwards like any other widget.

## Arranging widgets

- **Move the container** — drag the container on the dashboard; its child widgets keep their positions relative to each other.
- **Resize the container** — drag the resize grip on its bottom-right corner. Shrinking the container scales its children down to keep them in view.
- **Resize a child** — drag a child widget's resize grip to change its width or height within the grid.
- **Move a widget out** — drag a child out of the container and onto the dashboard to promote it back to a top-level widget. The dashboard reflows to make room below the drop point.

## Distribute evenly

Turn on **Distribute evenly** in the container's settings to give every child the same width and height, laying them out as an even grid. This is handy when a container holds a set of comparable tiles — for example a row of KPIs — that should all be the same size. With it off, each child keeps the size you gave it.

## Nesting containers

A grid container can hold another grid container. Drop a **Grid** into an existing container the same way you'd add any other widget, then add widgets into the nested grid. Use nesting to build sections within sections — for example, a top-level container per dashboard area, each holding its own arranged set of charts and controls.

## Editing and removing

Every container shows a settings gear on its top-right corner. Click it to open the menu:

- **Edit** — open the settings panel to change the **Columns**, **Rows**, or **Distribute evenly** options.
- **Delete** — remove the container and everything inside it from the dashboard.

[ref-workbooks]: /docs/explore-analyze/workbooks
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,11 @@ The dashboard builder supports the following widget types:
- [Controls](/docs/explore-analyze/dashboards/widgets/controls) — Let viewers filter the data or switch the time granularity
- [AI summary](/docs/explore-analyze/dashboards/widgets/ai-summary) — Generate narrative summaries of dashboard data on demand
- [Spacer & Divider](/docs/explore-analyze/dashboards/widgets/layout) — Non-data layout elements for whitespace and section breaks (in preview)
- [Grid container](/docs/explore-analyze/dashboards/widgets/container) — Group widgets into a nested grid to arrange, move, and resize them together (in preview)

## Adding widgets

Add widgets from the toolbar at the top of the dashboard builder: pick reports from the **Charts** picker to add charts, use the **Add Widgets** menu for text, AI summaries, and layout elements, or add a **Filter** or **Time Granularity** control from the **Add Controls** group.
Add widgets from the toolbar at the top of the dashboard builder: pick reports from the **Charts** picker to add charts, use the **Add Widgets** menu for text, AI summaries, layout elements, and grid containers, or add a **Filter** or **Time Granularity** control from the **Add Controls** group.

Each toolbar item can be added in two ways:

Expand Down