Skip to content

Sheet

Stable

A panel that slides over the page from the bottom, right or left edge, with a drag handle on bottom sheets.

Also known as drawer, bottom sheet, side sheet, off canvas

Install with npm install @tattva/ui (setup), or copy the code from the kit in Downloads.

Bottom sheet with a case summary

Opens from the bottom edge. Drag the handle down, press Escape, tap the scrim or use the Close handle to dismiss it.

When to use it

Shows a short task or a set of details on top of the page without leaving it. It feels close to the page behind it, so it suits quick looks and short decisions.

Made of: Scrim · Drag handle (bottom sheet) · Title · Close button (side sheet) · Body · Footer

Use it for

  • A case summary or detail view that opens from a list on a phone.
  • A side panel for filters, settings or order details.
  • A step the person must finish, with dismissing turned off and buttons in the footer.

Not for

  • A short question that needs a yes or no: use Dialog.
  • A panel that stays beside the page while people keep working: use CanvasPanel.
  • A list of actions on one item: use Menu.

Do and avoid

Trip details

Lisbon, 3 nights. Hotel and flights booked.
Do. A quick look at details without leaving the page.

Remove this hotel?

Avoid. A big sheet for a single yes or no is more than it needs.

Do

  • Keep the content short enough to scan in one sitting.
  • Put the main action last in the footer.
  • Use a bottom sheet on phones and a side sheet for details beside a list.
  • Give the sheet a title that says what it is, such as Case summary.

Avoid

  • Do not stack one sheet on another.
  • Do not use it for a one-line confirmation. Use a Dialog.
  • Do not turn off dismissing without a visible button that closes it.
  • Do not put long forms in a bottom sheet. Use a page.

On a phone

  • A bottom sheet rises from the screen edge, is capped at 40, 65 or 90 percent of the screen height by size, and scrolls inside its body.
  • Drag the handle down more than 80px, or flick it, to close. The handle is 44px tall on a touch screen, and a tap on it also closes.
  • The footer buttons stack in a column on a phone and sit in a row from 640px wide, and the footer keeps clear of the home bar with the bottom safe area.
  • Side sheets have no drag, leave a 40px strip of the page showing, and close with a 44px button or a tap on that strip.

Build your next AI screen with Tattva.

Free and open, with the code. Start in one line.

Get started