Tour Kit — @tour-kit/core Context File
Version: 0.3.0 | Generated: 2026-03-31
Paste this into your LLM to get accurate answers about @tour-kit/core.
=========================================================================
OVERVIEW
--------
Headless onboarding and product tour library for React - Core package
INSTALLATION
------------
npm install @tour-kit/core
# or
pnpm add @tour-kit/core
Peer dependencies:
react: ^18.0.0 || ^19.0.0
react-dom: ^18.0.0 || ^19.0.0
EXPORTS
-------
Types:
// Branch types
BranchTarget
BranchToTour
BranchSkip
BranchWait
BranchContext
BranchResolver
Branch
UseBranchReturn
// Config types
Side
Alignment
Placement
Position
Rect
KeyboardConfig
SpotlightConfig
Storage
PersistenceConfig
A11yConfig
ScrollConfig
Direction
TourKitConfig
TourStep
StepOptions
Tour
TourOptions
TourState
TourCallbackContext
TourActions
TourContextValue
HotspotPosition
HintConfig
HintState
HintsState
HintsActions
HintsContextValue
RouterAdapter
MultiPagePersistenceConfig
TourKitContextValue
TourKitProviderProps
TourProviderProps
UseTourReturn
UseStepReturn
UseSpotlightReturn
ElementPositionResult
UseFocusTrapReturn
UsePersistenceReturn
UseRoutePersistenceReturn
UseAdvanceOnOptions
PositionResult
LogLevel
LoggerConfig
ThrottledFunction
ThrottledFunctionWithFlush
Hooks:
useTourKitContext
useDirection
useTourContext
useTour
useStep
useSpotlight
useElementPosition
useKeyboardNavigation
useFocusTrap
usePersistence
useMediaQuery
usePrefersReducedMotion
useRoutePersistence
useAdvanceOn
useBranch
Components:
TourKitContext
TourKitProvider
TourContext
TourProvider
Utilities:
defaultKeyboardConfig
defaultSpotlightConfig
defaultPersistenceConfig
defaultA11yConfig
defaultScrollConfig
initialTourState
dispatchAdvanceEvent
getElement
isElementVisible
isElementPartiallyVisible
waitForElement
getFocusableElements
getScrollParent
getElementRect
getViewportDimensions
parsePlacement
calculatePosition
wouldOverflow
getOppositeSide
getFallbackPlacements
calculatePositionWithCollision
getDocumentDirection
mirrorSide
mirrorAlignment
mirrorPlacementForRTL
scrollIntoView
scrollTo
getScrollPosition
lockScroll
createStorageAdapter
createNoopStorage
createCookieStorage
safeJSONParse
createPrefixedStorage
announce
generateId
prefersReducedMotion
getStepAnnouncement
createTour
createNamedTour
createStep
createNamedStep
logger
// Branch utilities
MAX_BRANCH_DEPTH
isBranchToTour
isBranchSkip
isBranchWait
isSpecialTarget
isBranchResolver
resolveBranch
resolveTargetToIndex
isLoopDetected
// Throttle utilities
throttleRAF
throttleTime
throttleLeading
HOOKS
-----
useTourKitContext(...)
useDirection(...)
useTourContext(...)
useTour(...)
useStep(...)
useSpotlight(...)
useElementPosition(...)
useKeyboardNavigation(...)
useFocusTrap(...)
usePersistence(...)
useMediaQuery(...)
usePrefersReducedMotion(...)
useRoutePersistence(...)
useAdvanceOn(...)
useBranch(...)
COMPONENTS
----------
EXAMPLES
--------
Example 1: Usage
import { useAdvanceOn } from '@tour-kit/core';
function MyTourStep() {
// Enables advanceOn behavior based on current step config
useAdvanceOn({ enabled: true });
return {/* ... */};
}
Example 2: Step Configuration
Example 3: Event Types