Sliding Marker Pill

About this component

Sliding Marker Pill

An uppercase, letter-spaced pill with a small marker at its end. On hover the marker slips out on the right while the label slides over and a twin marker arrives from the left, in one smooth motion.

Usage

The import and the props worth knowing about, in one place.

import { Button22 } from "@/components/beste/component/button22";
import { ArrowRight } from "lucide-react";
import Link from "next/link";

// Compose the link with the render prop: your Link becomes the rendered
// element and the button content stays as its children.
<Button22 label="Start your journey" render={<Link href="/contact" />} nativeButton={false} />

<Button22
  label="See how it works"
  icon={ArrowRight}   // replaces the dot marker
  tone="outline"      // "primary" (default) | "light" | "dark" | "outline"
  onClick={() => console.log("clicked")}
/>

Props

Read from the component's own type, so this cannot drift from what it accepts.

PropTypeDefaultDescription
label*stringButton label (rendered uppercase)
asChildbooleanCompose the rendered element shadcn-style (radix asChild): your element (e.g. a router Link) becomes the root and the button content is injected as its children. Pass the element without children of its own.
childrenReact.ReactElementThe element to render when `asChild` is set (e.g. your framework's Link)
hrefstringFallback link: renders a plain `<a>`. Prefer `asChild` with your framework's Link component for client-side navigation.
iconLucideIconMarker drawn at the end of the pill; a small dot when omitted
tone"primary" | "light" | "dark" | "outline"Accent pill (default), light pill for photographic surfaces, dark pill for light pages, or a hairline outline in the current text colour
onClickReact.MouseEventHandler<HTMLButtonElement>Click handler (used when there is no href and no asChild)
classNamestringAdditional classes merged onto the button

More Button components

View all Button

Letter Roll Button

A pill button whose label rolls up letter by letter with a staggered hover animation.

Seal Arrow Button

An uppercase pill button with a trailing seal arrow chip and an optional link.

Editorial CTA Button

An editorial pill button with a rolling label and animated icon seal on hover.

Shine Sweep Button

A premium pill button with a diagonal shine sweep on hover for pricing and upgrade actions.

Avatar Stack Button

A social proof button with an avatar stack inside the pill and a trailing arrow.

Scramble Button

A scramble text button that cycles random glyphs on hover for developer and tech landings.