Guided Tour
shadcn/uiA component for creating interactive guided tours that walk users through your application step by step. Includes forward and backward navigation, dark overlay, and customizable content for each step.
Guided Tour
Installation
Props
<GuidedTourProvider />
Name | Type | |
|---|---|---|
defaultOpen | boolean | |
open | boolean | |
onOpenChange | (...args) => void | |
onOpenChangeComplete | ((open: boolean) => void) | |
modal | boolean | "trap-focus" | |
triggerId | string | |
defaultTriggerId | string | |
nativeButton | boolean | |
render | React.ReactElement | |
payload | object | |
openOnHover | boolean | |
delay | number | |
closeDelay | number | |
keepMounted | boolean | |
container | HTMLElement | RefObject<HTMLElement> | |
anchor | (...args) => Element | |
positionMethod | "absolute" | "fixed" | |
sideOffset | number | |
alignOffset | number | |
sticky | boolean | |
arrowPadding | number | |
disableAnchorTracking | boolean | |
initialFocus | boolean | HTMLElement | |
finalFocus | boolean | HTMLElement |
<GuidedTour />
Name | Type | |
|---|---|---|
defaultOpen | boolean | |
open | boolean | |
onOpenChange | (...args) => void | |
onOpenChangeComplete | ((open: boolean) => void) | |
modal | boolean | "trap-focus" | |
triggerId | string | |
defaultTriggerId | string | |
nativeButton | boolean | |
render | React.ReactElement | |
payload | object | |
openOnHover | boolean | |
delay | number | |
closeDelay | number | |
keepMounted | boolean | |
container | HTMLElement | RefObject<HTMLElement> | |
anchor | (...args) => Element | |
positionMethod | "absolute" | "fixed" | |
sideOffset | number | |
alignOffset | number | |
sticky | boolean | |
arrowPadding | number | |
disableAnchorTracking | boolean | |
initialFocus | boolean | HTMLElement | |
finalFocus | boolean | HTMLElement |
<GuidedTourTrigger />
Name | Type | |
|---|---|---|
tourId | any | |
render | ReactNode(default: null) | |
defaultOpen | boolean | |
open | boolean | |
onOpenChange | (...args) => void | |
onOpenChangeComplete | ((open: boolean) => void) | |
modal | boolean | "trap-focus" | |
triggerId | string | |
defaultTriggerId | string | |
nativeButton | boolean | |
payload | object | |
openOnHover | boolean | |
delay | number | |
closeDelay | number | |
keepMounted | boolean | |
container | HTMLElement | RefObject<HTMLElement> | |
anchor | (...args) => Element | |
positionMethod | "absolute" | "fixed" | |
sideOffset | number | |
alignOffset | number | |
sticky | boolean | |
arrowPadding | number | |
disableAnchorTracking | boolean | |
initialFocus | boolean | HTMLElement | |
finalFocus | boolean | HTMLElement |
<GuidedTourContent />
Name | Type | |
|---|---|---|
onSkip | string(default: undefined) | |
onNext | string(default: undefined) | |
onBack | string(default: undefined) | |
onFinish | string(default: undefined) | |
isLastStep | boolean(default: false) | |
isFirstStep | boolean(default: false) | |
align | string(default: start) | |
alignOffset | number(default: 0) | |
side | string(default: bottom) | |
sideOffset | number(default: 8) | |
defaultOpen | boolean | |
open | boolean | |
onOpenChange | (...args) => void | |
onOpenChangeComplete | ((open: boolean) => void) | |
modal | boolean | "trap-focus" | |
triggerId | string | |
defaultTriggerId | string | |
nativeButton | boolean | |
render | React.ReactElement | |
payload | object | |
openOnHover | boolean | |
delay | number | |
closeDelay | number | |
keepMounted | boolean | |
container | HTMLElement | RefObject<HTMLElement> | |
anchor | (...args) => Element | |
positionMethod | "absolute" | "fixed" | |
sticky | boolean | |
arrowPadding | number | |
disableAnchorTracking | boolean | |
initialFocus | boolean | HTMLElement | |
finalFocus | boolean | HTMLElement |
<GuidedTourPopover />
Name | Type | |
|---|---|---|
defaultOpen | boolean | |
open | boolean | |
onOpenChange | (...args) => void | |
onOpenChangeComplete | ((open: boolean) => void) | |
modal | boolean | "trap-focus" | |
triggerId | string | |
defaultTriggerId | string | |
nativeButton | boolean | |
render | React.ReactElement | |
payload | object | |
openOnHover | boolean | |
delay | number | |
closeDelay | number | |
keepMounted | boolean | |
container | HTMLElement | RefObject<HTMLElement> | |
anchor | (...args) => Element | |
positionMethod | "absolute" | "fixed" | |
sideOffset | number | |
alignOffset | number | |
sticky | boolean | |
arrowPadding | number | |
disableAnchorTracking | boolean | |
initialFocus | boolean | HTMLElement | |
finalFocus | boolean | HTMLElement |