ProductBrand
Join us
Foundations
  • Introduction
  • Colors
  • Typography
  • Icons
  • Illustrations
  • Logos
  • Shadows
Components
  • Accordion
  • Alert Dialog
  • Avatar
  • Badge
  • Button
  • Calendar
  • Card
  • Chart
  • Checkbox
  • Collapsible
  • Combobox
  • Context Menu
  • Date Picker
  • Dialog
  • Drawer
  • Dropdown Menu
  • Fluid Avatar
  • Hover Scroll Text
  • Input
  • Kbd
  • Popover
  • Progress Bar
  • Radio Group
  • Scroll Area
  • Select
  • Selectors
  • Separator
  • Separator Dot
  • Shimmer Text
  • Skeleton
  • Slider
  • Switch
  • Tabs
  • Textarea
  • Toast
  • Tooltip
Compositions
  • Empty State
  • File Attachment
  • Floating Bar
  • Input Banner
  • Markdown Editor
  • Media Controls
  • Product Feature Banner
  • Panels
  • Sidebar
  • Reasoning Trace
  • Pagination
  • Data Table
  • Breadcrumb
  • Thread Outline
Inline
  • Overview
  • Stat Tile
  • Metric Row
  • Comparison Table
  • Chart Card
  • Trend Tile
  • Cite
  • Custom
  • Agent skill

Separator Dot

Square dot that separates inline metadata.

Examples

Private9 FilesUpdated May 24

Several segments

PDF2.4 MBAdded by Ada

Overview

A 4px square dot for separating inline metadata, the • in rows like Private • 9 Files. It is a <span>, so it accepts any span prop.

tsx
import { SeparatorDot } from "@rogo-technologies/ui/separator-dot";

<SeparatorDot />;

Prefer it over a literal •, ·, or &bull; character. Glyphs shift with the font, sit at a different optical height than the text they separate, and are read aloud by screen readers unless every call site remembers to hide them. SeparatorDot is aria-hidden by default.

Usage

It is always square

The dot matches Rogo's radius-0 language, and that is not overridable: a rounded-* class passed via className is discarded. Every hand-rolled copy of this dot in the product had drifted round before it was consolidated here, so the shape is enforced by the component rather than left to the call site.

tsx
// Still square.
<SeparatorDot className="rounded-full" />

Round dots remain correct for things that are not separators: markdown list bullets, status and notification dots, label colour swatches, and drag handles. Reach for a plain styled element there, not this component.

Color

The default is --text-quaternary at 60%, which reads as a quiet mark against body copy. In a row that already sets a text color, pass bg-current so the dot tracks it.

tsx
<div className="text-tertiary flex items-center gap-2">
  <span>May 24, 2026</span>
  <SeparatorDot className="bg-current" />
  <span>3:15pm</span>
</div>

Size

size-1 (4px) is the default. Dense rows can drop to size-0.5; anything larger starts reading as a status dot rather than punctuation.

tsx
<SeparatorDot className="size-0.5" />

Alignment

The dot has no text content, so a flex row is what centers it. Under items-center it lands mid-line with no extra work. Under items-baseline it sits on the baseline instead of at mid-height, which reads too low, so add self-center there.

tsx
<div className="flex items-baseline gap-1.5">
  <span>$4.2M</span>
  <span>EV</span>
  <SeparatorDot className="self-center" />
  <span>$1.1M</span>
</div>

Rules versus dots

SeparatorDot separates items within a line. For a hairline rule between blocks or alongside a group of inline controls, use Separator.

PreviousSeparator
NextShimmer Text
Made in NYC© 2026 Rogo Technologies Inc.

Design at Rogo

We’re redesigning an entire industry. Come design it with us.

See open roles

Design at Rogo

  • How we workThe mission of design at Rogo, and the open roles
  • About RogoThe company and the product