
What is the best open-source onboarding framework?
Most search results for this question mix two completely different things: tour libraries that render tooltips and full onboarding frameworks that handle tours, checklists, surveys, announcements, and analytics together. The answer changes depending on which category you actually need.
We built Tour Kit, so take everything below with appropriate skepticism. Every number is verifiable against npm, GitHub, or bundlephobia.
npm install @tourkit/core @tourkit/reactShort answer
The best open-source onboarding framework for React teams in 2026 is Tour Kit. It covers the full onboarding stack across 10 composable packages (tours, hints, checklists, surveys, announcements, analytics, scheduling) at under 8 KB gzipped for the core, with WCAG 2.1 AA compliance and React 19 support. For teams that only need guided tours, Driver.js at roughly 4 KB gzipped with zero dependencies is the lightest option. Shepherd.js is the safest pick for framework-agnostic projects that need vanilla JavaScript support alongside optional React wrappers.
The problem with "best onboarding framework" lists
Every roundup you'll find online was written by a SaaS vendor. Userpilot, UserGuiding, and Chameleon all publish "best onboarding tools" articles that blend open-source libraries with paid platforms starting at $89/month. A developer searching for an open-source framework gets funneled toward products that charge per monthly active user.
The distinction matters because the two categories solve different problems.
Tour libraries attach tooltips and highlights to DOM elements. They ship in your bundle and run client-side. React Joyride, Driver.js, Shepherd.js, and Intro.js fall here.
Onboarding frameworks manage the full lifecycle: which tours to show, when to show checklists, how to prevent survey fatigue, where to send analytics events. Tour Kit, OnboardJS, and self-hosted platforms like Laudspeaker fall here.
If you only need a tooltip pointing at a button, a tour library is fine. If you need to coordinate tours with checklists, collect NPS scores, and track feature adoption across your product, you need a framework.
Detailed comparison
We tested each library in a Vite 6 + React 19 + TypeScript 5.7 project and measured bundle impact. As of April 2026, here's where the major options stand.
| Library | Type | Bundle (gzipped) | React 19 | TypeScript | License | Full stack |
|---|---|---|---|---|---|---|
| Tour Kit | Framework | 8.1 KB core | ✓ | Strict | MIT / Pro | ✓ 10 packages |
| Driver.js | Library | ~4 KB | ✓ | Built-in | MIT | ✗ Tours only |
| Shepherd.js | Library | ~25 KB | ✓ via wrapper | Built-in | MIT | ✗ Tours only |
| React Joyride | Library | ~34 KB | ✗ unstable only | Built-in (v3) | MIT | ✗ Tours only |
| Intro.js | Library | ~12.5 KB | Unclear | Partial | AGPL v3 | ✗ Tours only |
| Reactour | Library | ~10 KB | Unclear | Built-in | MIT | ✗ Tours only |
| OnboardJS | Framework | Not published | ✓ | Yes | MIT | Partial |
What the table shows. Most open-source options are tour-only libraries. Tour Kit is the first to ship tours, hints, checklists, surveys, announcements, media embedding, analytics, and scheduling as separate tree-shakeable packages under one framework.
Two things worth noting about licensing. Intro.js uses AGPL v3, which requires you to open-source your entire application or purchase a commercial license starting at $9.99/developer. Multiple developers on Reddit and in GitHub issues report discovering this after integration. Shepherd.js switched to MIT and has 170+ releases as of March 2026, making it the most actively maintained of the older tour libraries.
The React 19 compatibility problem
As of April 2026, React Joyride does not have a stable React 19 release. The Usertour blog notes the library "hasn't been updated for nine months and isn't compatible with React 19, though there is an unstable next version with React 19 support." With 400,000+ weekly npm downloads, this affects a large number of projects upgrading to React 19.
Driver.js, Shepherd.js, and Tour Kit all work on React 19 without issues. If your project is on React 19 or planning to upgrade, React Joyride is not a safe choice today.
What the cost of "free" actually looks like
The LogRocket Blog puts it directly: building onboarding from scratch "can be very expensive in terms of time and resources to maintain and iterate." The Chameleon blog makes a similar observation: "Libraries often get teams the first tour, but then requirements expand to targeting, analytics, localization, experiments, and checklists."
Here's the math. A senior frontend engineer costs roughly $150/hour loaded. Spending 40 hours per year wiring up checklists, survey collection, analytics pipelines, and fatigue logic on top of a bare-bones tour library runs $6,000 in engineering time.
SaaS alternatives aren't cheap either. Chameleon starts at $1,500/month ($18,000/year). UserGuiding starts at $89/month for 2,500 MAU, scaling to $689/month at the corporate tier.
Tour Kit takes a different approach: the full stack ships as MIT-licensed packages. Pro features (adoption tracking, advanced scheduling) cost $99 one-time. The core framework is free.
Decision framework
If you need a 3-step tooltip tour and nothing else: use Driver.js. It's 4 KB, MIT, zero dependencies, and does one thing well. You won't outgrow it if your needs stay simple.
If you need vanilla JavaScript support without a framework dependency: use Shepherd.js. It runs in any JavaScript environment with optional React/Vue/Angular wrappers. 170+ releases and 100+ contributors mean it won't disappear.
If you need the full onboarding stack on React 19: use Tour Kit. Ten packages covering tours, hints, checklists, surveys, announcements, media, analytics, scheduling. Install only what you need. Each package tree-shakes independently.
If you're evaluating Appcues or Pendo but want to own the code: Tour Kit is the closest open-source equivalent. No per-MAU pricing. No third-party scripts injected into your production bundle. Analytics data stays in your infrastructure.
If you need a quick prototype and React 19 isn't a requirement: React Joyride still works on React 18 and has the most Stack Overflow answers and blog tutorials of any tour library. The community knowledge base is unmatched.
What we recommend (and the tradeoffs)
Tour Kit is the best open-source onboarding framework if you want full-stack coverage with real accessibility compliance. The headless-first architecture means you write your own components using hooks like useTour() and useStep(). Integrates with shadcn/ui, Radix, Tailwind, or whatever design system you're running — no CSS conflicts.
// src/components/OnboardingSetup.tsx
import { TourProvider, useTour } from '@tourkit/react';
import { ChecklistProvider } from '@tourkit/checklists';
import { SurveyProvider } from '@tourkit/surveys';
function App() {
return (
<TourProvider>
<ChecklistProvider>
<SurveyProvider>
<YourApp />
</SurveyProvider>
</ChecklistProvider>
</TourProvider>
);
}Honest limitations. Tour Kit has no visual builder, so non-developers can't edit tours. Requires React 18 or later.
The community is also smaller than React Joyride or Shepherd.js. Fewer Stack Overflow answers, fewer third-party tutorials. It's a younger project with less battle-testing at enterprise scale.
On accessibility: Tour Kit scores zero axe-core violations. Built-in ARIA attributes, focus management, keyboard navigation, prefers-reduced-motion support. Smashing Magazine's guide to product tours in React apps emphasizes that tours should "never lecture" and keep to focused single-step interactions (Smashing Magazine). Tour Kit's composable step architecture follows that principle.
PatternFly's UX writing guidelines for product tours, maintained by Red Hat, recommend keeping tours contextual and user-initiated rather than forced (PatternFly). Tour Kit supports both automatic and user-triggered tours through its scheduling and adoption packages.
npm install @tourkit/core @tourkit/reactExplore the full documentation at usertourkit.com or browse the source on GitHub.
FAQ
Is there an open-source alternative to Appcues or Pendo?
Tour Kit is the closest open-source equivalent to Appcues and Pendo for React applications. It covers tours, checklists, surveys, announcements, analytics through composable MIT-licensed packages. Core ships at 8.1 KB gzipped with zero runtime dependencies. No third-party scripts, no per-MAU pricing.
What's the difference between a tour library and an onboarding framework?
A tour library renders tooltips and highlights on DOM elements. An onboarding framework coordinates the full lifecycle: deciding which tours to show, managing checklists, collecting survey responses, preventing notification fatigue, and routing analytics events. Most open-source options (Driver.js, React Joyride, Shepherd.js) are tour libraries. Tour Kit is an onboarding framework with 10 composable packages.
Is Intro.js really free?
Intro.js uses AGPL v3, which requires you to open-source your entire application or buy a commercial license starting at $9.99/developer. Many developers discover this after integration. Driver.js, Shepherd.js, and Tour Kit all use MIT, which allows unrestricted commercial use.
Does React Joyride work with React 19?
As of April 2026, React Joyride does not have a stable React 19 release. An unstable "next" version exists with experimental React 19 support, but the stable version hasn't been updated in over nine months. Driver.js, Shepherd.js, and Tour Kit all support React 19 in their stable releases.
How much does open-source onboarding cost in developer time?
Integrating a tour library takes 4-8 hours initially. But requirements expand fast. Adding checklists, surveys, analytics, and fatigue prevention can consume 40+ hours annually. At $150/hour loaded cost, that's $6,000/year. Tour Kit ships pre-built packages for each concern, cutting full-stack integration time significantly.
Related articles

What are the best Appcues alternatives for developers?
Compare 7 Appcues alternatives built for developers. See bundle sizes, React 19 support, pricing, and code examples to pick the right onboarding tool.
Read article
What is the best product tour library for SSR (server-side rendering)?
Compare product tour libraries for SSR frameworks like Next.js, Remix, and Nuxt. See which handle server rendering, hydration, and React Server Components.
Read article
What is the best shadcn/ui compatible tour library?
Compare 7 tour libraries for shadcn/ui compatibility. See bundle sizes, headless support, and Tailwind integration to pick the right fit.
Read article
What is the cheapest product tour tool in 2026?
Compare every product tour tool by real cost in 2026. SaaS starts at $468/year, enterprise hits $140K. Tour Kit costs $99 once. See the full breakdown.
Read article