Skip to content
Mizen UI
Docs

IntroductionInstallationCLIStylingFoundationsThemingCompositionIntegrationsAccessibilityFor agents

useCopyToClipboard

AccordionAspect RatioCardCollapsibleFrameGridGroupInlineScroll AreaSectionSeparatorSpacerStack

BlockquoteCitationCodeHeadingKbdLabelLinkTextVisually Hidden

ButtonButton GroupToggleToggle groupToolbar

CalendarCheckboxCheckbox groupComboboxDate pickerDate range pickerDate-Time InputFieldFieldsetFile UploadFormInputInput groupNumber fieldOTP FieldRadio groupSelectSliderSwitchTextareaTime Input

BreadcrumbMenubarNavigation MenuPaginationSegmented ControlStepperTabs

Alert dialogCommandContext MenuDialogDrawerMenuPopoverPreview CardSheetTooltip

AlertBadgeEmptyError StateMeterProgressSkeletonSpinnerStatus dotToast

Activity FeedAvatarAvatar GroupData TableListMetricOverflow ListProperty ListTableTokenTree

Area ChartBar ListCalendar HeatmapCategory ComparisonChart FrameChart LegendChart TooltipDistributionFunnelHeatmapMetric TrendPart-to-WholeProgress RingsRadar ChartRadial BarsSankey ChartScatter ChartScore GaugeTime Series

Diagram

AttachmentCarouselCode BlockLightboxMarkdownThumbnailTimestamp

Agent ThinkingApproval CardComposerConversationInline CitationMessageMessage ScrollerQuestion CardSourcesStreaming TextSuggestionTask ListTerminalTool Call

On this page

  • Preview
  • Usage
  • Examples
  • Release activity
  • Cluster health
  • Deployment matrix
  • Workspace summary
  • Security activity in RTL
  • Recommendations
  • Usage boundaries
  • API reference

Layout

Scroll Area

Native-feel scroll container with custom scrollbars, edge fading, and overscroll containment.

idle

Usage

import { ScrollArea } from "@mizen-labs/ui";

Examples

Release activity

Recent operations stay in one bounded view.

Cluster health

Compare nodes without losing the table columns.

Deployment matrix

Review deployments across environments and regions.

Workspace summary

Short content lets the page keep scrolling.

Security activity in RTL

The same activity view, with right-to-left reading order.

Recommendations

GuidancePractice
Do

Keep scroll regions bounded and their content reachable by keyboard. Preserve visible context around wide content.

Do

Constrain the parent height when content must scroll.

Usage boundaries

GuidanceBoundary
Scope

Use TableContainer for tables and CodeBlockContent for code. Avoid nested scrolling without a clear task reason.

API reference

Public props from @mizen-labs/ui. Use exported prop types for the complete TypeScript contract.

PropTypeDefaultDescription
clampContentMinWidthbooleantrueClamps content min-width to prevent intrinsic child overflow.
fillbooleanfalseFills the full available height and width.
overscrollContainbooleanfalseContains scroll chaining on overflowing axes.
scrollFadebooleanfalseApplies mask image fade on overflowing edges.
scrollbarGutterbooleanfalseReserves scrollbar space when overflowing.
overflowEdgeThresholdnumber | Partial<Record<'xStart' | 'xEnd' | 'yStart' | 'yEnd', number>>0Threshold before overflow edge attributes are applied.
childrenReactNode—Scrollable content rendered inside the viewport.
ScrollAreaViewportComponent—Styled Base UI viewport for custom compositions.
ScrollAreaScrollbarComponent—Styled scrollbar with an automatic thumb or caller-supplied children.
ScrollAreaThumbComponent—Styled draggable thumb for custom compositions.
ScrollAreaCornerComponent—Corner between horizontal and vertical scrollbars.
ScrollAreaPrimitiveBaseScrollArea—Base UI ScrollArea primitive parts.
PreviousInlineNextSection
  • Maya Chen deployed Northstar 2.9

    2 minutes ago

  • Leo Kim approved the copy review

    14 minutes ago

  • Ana Silva uploaded new mockups

    1 hour ago

  • Maya Chen merged the pricing branch

    2 hours ago

  • Jo Reyes opened a billing issue

    3 hours ago

  • Leo Kim renamed the Q3 board

    5 hours ago

  • Ana Silva invited two reviewers

    6 hours ago

  • Jo Reyes closed the billing issue

    8 hours ago

  • AUD-101 — auth-gateway200 OK (10:42:01)
  • AUD-102 — user-session200 OK (10:42:03)
  • AUD-103 — token-issuer201 Created (10:42:06)
  • AUD-104 — rate-limiter429 Too Many (10:42:09)
  • AUD-105 — api-router200 OK (10:42:12)
  • AUD-106 — telemetry-sink204 No Content (10:42:15)
  • AUD-107 — audit-indexer200 OK (10:42:18)
Node IDRegionInstanceCPUMemoryStatusUptime
node-us-east-1aus-east-1c6i.xlarge14%3.2 / 16 GBReady42d 11h
node-us-east-1bus-east-1c6i.xlarge28%7.8 / 16 GBReady42d 11h
node-us-west-2aus-west-2c6i.xlarge52%11.1 / 16 GBReady19d 04h
node-eu-west-1aeu-west-1c6i.xlarge19%4.5 / 16 GBReady61d 22h
EnvironmentRegionVersionCommitLatencyStatus
production-usus-east-1v2.14.0a4f91b18msActive
staging-usus-east-2v2.14.1-rc1b8c02e19msTesting
canary-apap-southeast-1v2.14.1-canaryc7d31f31msEvaluating
sandbox-internalus-west-1v2.15.0-deve5a40d14msSyncing
  • Ingress healthyProduction edge proxy routing operational
  • Quotas stableZero rate limiting violations detected in the last hour
  • SEC-901 — key-rotationRotated (04:00:00)
  • SEC-902 — tls-handshakeTLSv1.3 (04:05:12)
  • SEC-903 — firewall-syncRules verified (04:10:33)
  • SEC-904 — cert-renewalValid (89d) (04:15:45)
  • SEC-905 — mTLS-tunnelConnected (04:20:01)
  • SEC-906 — token-revokeRevoked (04:25:10)
  • SEC-907 — auth-anomalyQuarantined (04:30:22)
  • SEC-908 — policy-syncApplied (04:35:55)