Skip to content
Dethink Components

ComponentsLink

Link

Take users to another page or a section on the same page.

On this page

Use this component from the local workspace package. Follow the setup guide first. A public npm package and registry are not available yet.

View registry files

Import the component into your page or component file.

Usage
import { Link } from "@dethink/components";

Try the examples, then open the code to use them in your app.

Variants and underline

default, muted, nav, and destructive variants with hover, always, and none underline modes.

Read the theming guide to swap every token, or skim the changelog for what shipped.

Always underlined · Nav link · Delete account

Show sourceexamples/link/basic.tsx
examples/link/basic.tsx
"use client";

import { Link } from "@dethink/components";

export function LinkBasic() {
  return (
    <div className="mx-auto max-w-md space-y-2 text-sm">
      <p>
        Read the <Link href="#basic">theming guide</Link> to swap every token,
        or skim the{" "}
        <Link href="#basic" variant="muted">
          changelog
        </Link>{" "}
        for what shipped.
      </p>
      <p>
        <Link href="#basic" underline="always">
          Always underlined
        </Link>{" "}
        ·{" "}
        <Link href="#basic" variant="nav" underline="none">
          Nav link
        </Link>{" "}
        ·{" "}
        <Link href="#basic" variant="destructive">
          Delete account
        </Link>
      </p>
    </div>
  );
}

asChild merges styling onto a Next.js Link; external links pair a visual indicator with screen-reader-only context.

Browse the catalog stays a real Next.js client-side navigation.

View source on GitHub(opens in a new tab)

Examples that combine components for common tasks.

nav-variant links in a labeled breadcrumb list — the current page is plain text with aria-current, not a link to itself.

Link renders a real anchor element (or its asChild child).

Link props
PropWhat it doesDefault
hrefstringRequired unless asChild delegates it to the child element.Not set
variant"default" | "muted" | "nav" | "destructive"Color treatment; nav is quiet until hover for menus."default"
underline"hover" | "always" | "none"Underline behavior."hover"
asChildbooleanMerge styling onto the single child — the seam for framework router links.false
…native anchor propsAnchorHTMLAttributestarget, rel, download, aria-current, and the rest.Not set