Skip to content

Layout

Layout gives each screen a predictable structure and keeps content readable at every viewport size.

Use these components to establish the page hierarchy. Not every page needs every component.

ComponentRole
App shellSets up the main application layout to accommodate app header, navigation and page content.
App headerProvides branding and application-level actions.
Top navProvides primary navigation across the top of the page.
Side navProvides primary navigation when the application has many navigation items.
Page headerIdentifies the current page and provides its key actions.

The app shell owns the overall frame. Within it, use a top nav or side nav for primary navigation, and use a page header to establish the context for the current view.

Choose the narrowest width that comfortably supports the content. A narrower content area improves readability and focus; a wider area gives complex data more room to breathe. Center the content at its maximum width on larger screens.

Page width applies to the primary content area. Navigation and other shell elements can use their own dimensions.

WidthMaximum widthRecommended use
Full width100%Wide data tables, Kanban boards, single-page apps, and customizable layouts.
Large1512pxData tables with 10 or more columns, complex dashboards, analytics, charts, and multi-column layouts.
Medium1128pxStandard dashboards, tables and lists, forms, settings pages, and detail pages.
Small848pxArticles and documentation, simple forms, settings, and wizard flows.

On mobile, pages use the full available width with 16px horizontal margins. From the md breakpoint upward, pages use 24px horizontal margins. Centered content gains more whitespace on larger screens, which helps maintain focus without making the content feel stretched.

BreakpointViewport width
sm<640px
md<1024px
lg<1440px
xl>=1440px