AhaSlides Design
v0.52.0React · Vue · Lit

Components · Layout

Divider

A thin rule that separates blocks of content — full-width, with a label, or a vertical hairline.

Examples

Orientation
Style
Text align
Emphasis
Horizontal · plain rule · labelled (heading) · left · dashed
Section one
Details
Section two
Section three
optional note
Section four
Section five
Vertical · inline hairlines
Edit Preview Share

API

PropTypeDefaultNotes
orientationhorizontal | verticalhorizontalHorizontal rule or an inline vertical hairline
alignleft | center | rightcenterWhere the slotted label sits along a horizontal rule
dashedbooleanfalseRender the rule as a dashed line
plainbooleanfalseDrop the label from heading emphasis (bold, text-default) to a quiet regular note (400, text-secondary)

Install

# .npmrc — once: point the @ahaslides-product scope at GitHub Packages
@ahaslides-product:registry=https://npm.pkg.github.com
//npm.pkg.github.com/:_authToken=${GITHUB_TOKEN}   # a GitHub token with read:packages

npm i @ahaslides-product/design
import '@ahaslides-product/design/tokens.css';   // once, at the app root
import '@ahaslides-product/design/aha-divider';   // registers <aha-divider>

Agent feed for this component (absolute, fetchable anywhere): divider.agent.json · divider.md · divider.llms.txt

When to use

When to use
  • Divider — separating stacked sections, list groups, or toolbar items
  • Space — you only need consistent gaps, not a visible line
  • whitespace — the separation reads clearly without any rule — prefer less chrome
A divider is quiet structure — keep it 1px and on the border token. Use a label only when the section genuinely needs naming; reach for whitespace before adding a rule.
Surfaces
editor dashboard settings audience

Spec

Rule 1px solid, border #E3E3E3 · Label (heading) Plus Jakarta SemiBold 600, 13/22, text-default #1A1A1A · Label (plain) `plain` → Regular 400, text-secondary #4A4A4A · Align label center (default) · left · right; the short leg becomes a 24px stub · Gap 12 between rule and label · Vertical 1px left hairline, 1em tall, 0 8 margin · Dashed `dashed` swaps the rule to a dashed border