Skip to main content

Components

Web components (mm-*) that work in any framework, with React wrappers and Svelte types. Each page has a live example, guidance and the full API.

Actions​

ComponentUse it for
ButtonTriggers one action.
Button groupGroups related buttons, spaced or attached.
Copy buttonCopies a value to the clipboard.
Menu buttonA button that opens a menu.
Split buttonA primary action with a menu of alternatives.

Data visualisation​

ComponentUse it for
Area chartOne key series over a flat tint.
Bar chartGrey bars with one highlighted, direct value labels, vertical or ranked horizontal.
Contour chartIsoline density view in contour colours with an index contour.
KPI tileOne number with a label, a context sentence and an optional sparkline.
Line chartGrey-first time series with one key line, direct labels and annotations.
Proportion barA single grey stacked bar with direct labels, replacing the donut.
Run stripPass and fail history of pipeline runs as square cells.
SparklineA 64×16 word-sized trend line with its latest value.

Data​

ComponentUse it for
Activity feedHome's activity, grouped by day.
Audit rowThe query audit log as a dense, expandable table.
AvatarA person's photo or initials, an agent's robot or a team's icon.
Data tableMany records in a sortable, selectable, virtualised grid.
Diff viewerStructured schema changes or a unified text diff.
Metadata viewerJSON-aware key and value metadata.
Notification listNotifications for the bell popover and the notifications page.
Owner chipAvatar and name for a person, agent or team.
Results gridSQL results, virtualised in both directions.
Schema outlineThe fields of an asset's schema as a readable outline, with a field panel and JSON/YAML views.
TimelineOrdered steps with state markers, vertical or horizontal.
TreeA virtualised, lazy-loading tree view.

Docs and marketing​

ComponentUse it for
Code sampleRead-only highlighted code with a copy button.
TopographyAbstract topographic background field.

Forms​

ComponentUse it for
CheckboxTurns one option on or off.
ComboboxType to find one value, with async search.
Cron fieldA cron expression field with presets, a plain-English description and the next runs.
Date range pickerPicks a relative or absolute time range.
FieldsetGroups related controls under a legend.
File dropDrag-and-drop or browse for files, form-associated.
Form fieldLabel, help and error layout for a slotted control.
Key value editorEdit free-form key and value pairs, with paste and an optional JSON mode.
MultiselectPick several values, shown as removable tags.
Number fieldA number with a unit, steppers and spinbutton keys.
Query inputSearch box with highlighting for Marmot's query syntax.
Radio groupPick one of a few options.
Search fieldA query field with a search icon and a shortcut hint.
Segmented controlPick one of two to four modes.
SelectPick one value from a short list.
SliderSet a number, or a range, by position.
SwitchTurns a setting on or off.
Text fieldOne line of text with a label, help and error.
TextareaSeveral lines of text with a label, help and error.

Foundations​

ComponentUse it for
CountA small tabular count for tabs, filter pills and badges.
HeadingA heading with a semantic level and a token type style.
KbdA keyboard shortcut as physical keys.
LinkA link: burnt sienna in prose, quiet ink in rows, muted for chrome.
LogoThe Marmot wordmark, or its "M" monogram, as fixed artwork.
ReadoutA sentence-case metadata strip separated by middle dots.
TextInterface text in a token type style.
Visually hiddenContent for screen readers only, or shown on focus for skip links.

Layout​

ComponentUse it for
Description listLabel and value pairs for metadata.
Details bladeThe 36rem side panel of sections on an asset page.
DisclosureA button that shows and hides a region.
ListHairline-separated rows with keyboard navigation between interactive items.
Page headerThe title block of a view: title, caption, MRN, description, tags, owners and actions.
PanelA bordered surface for one subject, with a head and a body.
SectionA titled page region with optional description and actions.
Split paneTwo panes with a draggable, keyboard-resizable separator.
ToolbarA row of controls that act on one surface.

Lineage​

ComponentUse it for
Lineage canvasPan-and-zoom lineage graph with keyboard navigation and a minimap.
Lineage legendExplains the lineage canvas encodings.
Lineage nodeAn asset on the lineage canvas.
ComponentUse it for
App shellThe app layout: banner, sidebar, top bar, main area and blade.
BreadcrumbsThe path to the current page, with overflow.
Command paletteThe ⌘K palette: navigation, commands and live catalogue search.
Facet sidebarThe filter column with facets, applied filters and Clear all.
Filter pillToggle a facet filter, or show an applied one.
Org switcherSwitches organisation and workspace (Cloud).
PaginationMoves through pages of results.
Sidebar navThe grouped sidebar navigation, with a collapsed rail.
StepperShows progress through a multi-step flow.
TabsSwitches between views of one object.
Top barThe app's top bar: page context, global search, notifications and the avatar menu.

Overlays​

ComponentUse it for
Asset cardA compact summary of one asset.
Confirm dialogConfirms a destructive action, optionally by typing its name.
Context menuOpens a menu on right-click or Shift+F10.
DialogA modal dialog for one decision or short task.
DrawerA modal side sheet for connect flows and create forms.
Hover cardA delayed preview card for a link.
Keyboard shortcutsA dialog listing keyboard shortcuts by group.
MenuA list of actions, inline or floating.
Person cardWho a person or agent is.
PopoverA non-modal panel anchored to a trigger.
TooltipA short, instant description of a control or a data point.

Query​

ComponentUse it for
Code editorCodeMirror editor for SQL, JSON and YAML on the code ground.
Query builderBuild a search as groups of conditions that match all, any or none.
Query historyPast queries with status, source, rows and duration.
Saved query cardOne saved query in a list: name, owner, source, last run and SQL preview.
Search barSearch with conditions as editable tokens: the query builder and the search box in one.
SQL editorSQL editor with catalog completion, run and format.

Status​

ComponentUse it for
BannerFull-width system message at the top of the app shell.
CalloutOne message inside a page.
Empty stateTitle, one sentence, one action, over a topographic background field.
LoadingTopographic draw-in loading state.
PopularityHow much an asset is used, as four bars.
ProgressBar plus a mono count for long operations.
SkeletonPlaceholder shapes while content loads.
Status pillA run, asset or request condition in one word.
TagDomain, classification or origin label.
ToastTransient confirmation of something that happened.