Link

Wraps an anchor element to add icons or margins.

Props

action
string
Custom action event name to dispatch when the link is clicked.
actionArg
string
Single argument to pass with the action event. Deprecated, use actionArgs instead.
actionArgs
Record<string, unknown>
Object of arguments to pass with the action event.
color
GoabLinkColor
Sets the color theme. 'interactive' for blue, 'dark' for black, 'light' for white text.
Defaults to interactive.
leadingIcon
GoabIconType
Icon displayed before the link text.
size
GoabLinkSize
Sets the text size and corresponding icon size.
Defaults to medium.
testId
string
Sets a data-testid attribute for automated testing.
trailingIcon
GoabIconType
Icon displayed after the link text.
mt, mr, mb, ml
Spacing
Apply margin to the top, right, bottom, and/or left of the component.
action
string
Custom action event name to dispatch when the link is clicked.
actionArg
string
Single argument to pass with the action event (deprecated, use actionArgs).
actionArgs
Record<string, unknown>
Object of arguments to pass with the action event.
color
GoabLinkColor
Sets the color theme. 'interactive' for blue, 'dark' for black, 'light' for white text.
Defaults to interactive.
leadingIcon
GoabIconType
Icon displayed before the link text.
size
GoabLinkSize
Sets the text size and corresponding icon size.
Defaults to medium.
testId
string
Sets a data-testid attribute for automated testing.
trailingIcon
GoabIconType
Icon displayed after the link text.
mt, mr, mb, ml
Spacing
Apply margin to the top, right, bottom, and/or left of the component.
action
string
Custom action event name to dispatch when the link is clicked.
action-arg
string
Single argument to pass with the action event (deprecated, use actionArgs).
action-args
Record<string, unknown>
Object of arguments to pass with the action event.
Defaults to {}.
color
"interactive" | "dark" | "light"
Sets the color theme. 'interactive' for blue, 'dark' for black, 'light' for white text.
Defaults to interactive.
leadingicon
GoabIconType
Icon displayed before the link text.
size
"xsmall" | "small" | "medium" | "large"
Sets the text size and corresponding icon size.
Defaults to medium.
testid
string
Sets a data-testid attribute for automated testing.
trailingicon
GoabIconType
Icon displayed after the link text.
mt, mr, mb, ml
Spacing
Apply margin to the top, right, bottom, and/or left of the component.
Examples

Card grid

Error pages

Error pages preview
More info

Types

Submit form

This distinction matters for screen reader users who expect different behaviors, keyboard navigation patterns, and browser history.

Use a button for actions that trigger functionality (submit, save, cancel). Use a link for navigation to different pages or external websites.
Go to homepage
Don't use Button for simple navigation (use Link), toggling state (use Toggle or Checkbox), or minor utility functions (use Icon Button).

Icons

Use trailingIcon='open' for links that go to external sites so users know they're leaving the service.

Other

Use Link for navigation to other pages. Use Button for actions that change state or trigger functionality.
All GoA Design System components are built to meet WCAG 2.2 AA standards. The following guidelines provide additional context for accessible implementation.

No accessibility-specific guidelines have been documented for this component yet.

View old component docs