Components Typography
Link
StableNavigates to another page or resource, inline in text or on its own.
Use Link for navigation and Button for actions. Inline links are underlined so they can be told apart without colour. External links open in a new tab, carry rel="noopener noreferrer", and tell screen-reader users that a new tab will open. Use `asChild` to style your router’s link component.
Overview
By continuing you agree to the Terms of service and Privacy policy.
import { Link, Text } from '@bindshq/stance-react';
export function Basic() {
return (
<Text size="sm">
By continuing you agree to the <Link href="#terms">Terms of service</Link> and{' '}
<Link href="#privacy">Privacy policy</Link>.
</Text>
);
}Light, dark and high contrast
Every Stance component is designed and tested in all three appearance modes.
By continuing you agree to the Terms of service and Privacy policy.
By continuing you agree to the Terms of service and Privacy policy.
By continuing you agree to the Terms of service and Privacy policy.
Import
import { Link } from '@bindshq/stance-react';Examples
import { Link, Stack, Text } from '@bindshq/stance-react';
export function Variants() {
return (
<Stack gap={3}>
<Text size="sm">
Inline: read the <Link href="#guide">deployment guide</Link>.
</Text>
<Link href="#templates" variant="standalone">
View all templates →
</Link>
<Text size="sm" tone="muted">
Subtle: owned by{' '}
<Link href="#user" variant="subtle">
Priya Raman
</Link>
</Text>
</Stack>
);
}import { Link } from '@bindshq/stance-react';
export function External() {
return (
<Link href="https://binds.si" external variant="standalone">
Visit binds.si
</Link>
);
}With a router
Pass your framework’s link as the child, e.g. Next.js <Link>.
import { Link } from '@bindshq/stance-react';
export function RouterLink() {
return (
<Link asChild variant="standalone">
<a href="#dashboard">Go to dashboard</a>
</Link>
);
}API reference
| Prop | Type | Default | Description |
|---|---|---|---|
variant | 'inline' | 'standalone' | 'subtle' | 'inline' | Visual style. |
external | boolean | None | Open in a new tab with icon and announcement. Defaults to true when target="_blank". |
asChild | boolean | false | Style a router link component. |
...props | AnchorHTMLAttributes | None | All native anchor attributes. |
Accessibility
- Inline links are underlined, so they are distinguishable without colour (WCAG 1.4.1).
- External links announce ", opens in a new tab" and include rel="noopener noreferrer".
- Focus shows a 2px outline offset from the text.
Keyboard
| Keys | Action |
|---|---|
| Enter | Follows the link. |
Usage guidelines
Do
- Write link text that makes sense out of context.
Don’t
- Use “click here”.
- Use a link to perform an action; use Button.