Skip to content

gilbarbara/react-joyride

Repository files navigation

React Joyride

CI Quality Gate Status Coverage

Create awesome tours for your app!

Showcase your app to new users or explain the functionality of new features.

Joyride example image

Highlights

  • 🎨 Easy to use: Just set the steps and you're good to go
  • 🔧 Customizable: Use your own components and styles
  • Accessible: Focus trapping, keyboard navigation, and ARIA support
  • 📦 Lightweight: ~30% smaller bundle than v2
  • 🔄 Broad compatibility: React 16.8+ through React 19
  • 🖥️ SSR-safe: Works with Next.js, Remix, and other server-rendering frameworks

Resources

Setup

npm i react-joyride

Quick Start

Component API

import { Joyride } from 'react-joyride';

const steps = [
  { target: '.my-first-step', content: 'This is my awesome feature!' },
  { target: '.my-other-step', content: 'This is another awesome feature!' },
];

export function App() {
  return (
    <div>
      <Joyride run steps={steps} />
      {/* your app */}
    </div>
  );
}

Hook API

import { useJoyride } from 'react-joyride';

const steps = [
  { target: '.my-first-step', content: 'This is my awesome feature!' },
  { target: '.my-other-step', content: 'This is another awesome feature!' },
];

export function App() {
  const { controls, state, Tour } = useJoyride({ steps });

  return (
    <div>
      <button onClick={() => controls.start()}>Start Tour</button>
      {Tour}
      {/* your app */}
    </div>
  );
}

Agent Skill

Enable AI assistants to implement guided tours with React Joyride.

The skill gives your AI assistant comprehensive knowledge of the API, step configuration, events, custom components, and common patterns.

npx skills add gilbarbara/react-joyride

Migration from v2

Check the migration guide for detailed instructions on upgrading from v2.

License

MIT