Skip to content
Protocore Design Systemv1.6.9

/// Feedback

HelpTip

A "?" glyph (or any trigger) that reveals an accessible tooltip using the PDS overlay skin.

import { HelpTip } from "@protocore/pds";
View as Markdown

Basics

With no children, HelpTip renders a 14px mono "?" glyph. Put it beside a label whose meaning benefits from a one-line clarification.

Effective APR

Custom trigger and side

Pass any focusable element as the trigger — it's wired through Radix asChild. Use side (and sideOffset) to steer where the tip appears.

When to use it

Use HelpTip for a short, *supplementary* clarification attached to a specific label or control — the definition of a metric, a unit, a caveat. It's Tooltip pre-skinned as an inline help affordance with a built-in glyph.

  • If the information is essential (not supplementary), don't hide it behind a hover — put it in the copy or a Callout.
  • If you're labelling an icon-only control, that's a plain Tooltip, not a HelpTip.
  • Keep the hint to a phrase or a sentence; a tooltip is not a place for paragraphs or interactive content.

Usage

Do

  • Attach it to the exact term or control it explains.
  • Keep the hint to a short phrase or single sentence.
  • Use it for supplementary detail a user can succeed without.
  • Pass a custom trigger when the default "?" glyph doesn't fit.

Don't

  • Hide essential or task-blocking information inside a hover.
  • Put links, buttons, or long copy in the tooltip — it isn't focusable content.
  • Scatter HelpTips on every label; reserve them for genuine ambiguity.
  • Rely on hover only — the trigger must also open on keyboard focus (it does).

Accessibility

KeysAction
TabMoves focus to the trigger, which opens the tooltip.
Shift + TabMoves focus away, closing the tooltip.
EscapeCloses the tooltip while the trigger stays focused.
  • Built on Radix Tooltip: it opens on both hover and keyboard focus, so it's not mouse-only.
  • The default glyph trigger is a real `<button>` with an accessible `label` (default "More info").
  • Content is supplementary by design — never place essential information or interactive elements inside it.
  • A short `delayDuration` avoids flicker without making keyboard users wait.

HelpTip props

PropTypeDefaultDescription
childrenReactNodeCustom trigger. When omitted, a 14px mono "?" glyph button is rendered.
classNamestringExtra className applied to the default glyph trigger.
delayDurationnumber200Delay in ms before the tooltip opens.
hint *ReactNodeTooltip content shown on hover / focus of the trigger.
labelstringMore infoAccessible label for the default "?" glyph trigger.
sideenumtopPreferred side to render the tooltip.
sideOffsetnumber6Gap in px between the trigger and the tooltip.

Related

  • TooltipA hover/focus tip on a dark panel that labels or briefly explains the element it points at.
  • InlineMessageA compact single-line status message — tone dot plus text — for field- and form-level feedback.
  • CalloutA tone-tinted note with a 2px left rule — the one place a note earns color, over an optional mono uppercase title.