Do you have a web or a mobile app built with React, and do you want to onboard your users with ease and offer a seamless experience? The best way to do it is by creating effective product tours.
There are two paths for this. One is building on your own, and the other is buying a tool that can layer over your existing product and help you deploy tours quickly and easily without coding.
Here, we'll first run you through a build vs. buy overview. Then once you’ve decided that you want to build your own, we’ll show you the eight best React libraries you can use. Plus, we’ll present you with an alternative solution if building in-house is not an option for you right now.
To build in-house or find a SaaS solution? #
To summarize briefly, here is a comparison of building versus buying.
As you can see, building depends on whether you have dev resources available that can be committed to your product tours, since not only do they have to be built and deployed, but also maintained.
If your dev resources are restricted, getting a SaaS tool might be a better solution for you. With a dedicated product adoption software, you can deploy quickly and customize your experiences with a simple no-code builder. Plus, if you have an existing tech stack that you need to integrate with, such as your analytics and your CRM tools, then a product adoption software may make more sense rather than trying to do everything yourself.
If you do have developers who can quickly get to work, then the first starting point is finding an open-source library that already provides a good foundation. Here are eight React onboarding libraries that we would recommend to build your product tours with.
For React JS web applications #
1. Intro.js #
Intro.js is free for non-commercial projects, and for commercial use, it requires a one-time fee that starts at $9.99. So you can try it out for free and then decide if it’s what you want.
Why choose Intro.js?
2. Shepherd.js #
For its modals, it uses Popper,js which is another open-source library used for rendering tooltips. This is how Shepherd.js enables you to create steps for your tour.
Why choose Shepherd.js?
Shepherd.js is a super robust tool thanks to Popper.js, a popular tool with 23.8k stars on GitHub. This makes Shepherd.js a better tour tool than many others. For instance, thanks to Popper, Shepherd.js tours never have steps that end up off-screen or cropped due to an overflow.
3. React Joyride #
With 5.1k stars on GitHub, React Joyride is one of the most popular libraries for creating product tours on React apps.
The way it works is fairly simple. It enables you to prompt tooltips on selected DOM elements to explain what they are. For positioning and styling of the tooltips, it uses React Floater.
Why choose React Joyride?
Thanks to React Floater, it has a great base design template that is highly customizable. So if you have some styling requirements, React Joyride might be the better choice.
Plus, the library is actively maintained and continuously updated. The community, including the creator, is also very active in providing assistance to those who encounter issues.
4. Reactour #
For product tours, the most relevant packages from Reactour are:
@reactour/tour: The main package for creating a series of steps that highlight parts of your product.
@reactour/mask: A customizable component that allows you to highlight DOM elements or areas.
@reactour/popover: A customizable component that lets you place dialogs.
Why choose Reactour?
One great thing about Reactour is that you can make good-looking tours. But one caveat here is that there is limited styling customization compared to other libraries. So if you want to deploy something that looks fairly good quickly without much consideration into looking on-brand, then Reactour could be a great choice for you.
5. Walktour #
A relatively unknown library compared to other alternatives for React apps, Walktour still offers much potential in terms of creating onboarding flows and product tours.
Its features include:
Full CSS selector support
Interaction with highlighted elements
Custom HTML content
However, you may find it a little more difficult to get support when stuck on issues due to the relative obscurity of the library as well as the small size of its community.
Why choose Walktour?
Walktour seems to excel when it comes to advanced customization of your tour steps. So if you’re looking to tinker away and confident about being able to figure things out on your own, Walktour can be a decent option.
For React Native mobile apps #
6. React Native Walkthrough Tooltip #
React Native is a framework for designing mobile applications that is based on React JS. So if you’re looking for a product tour library for your React Native mobile app, then React Native Walkthrough Tooltip could be a good option.
This library is an inline wrapper that calls out React Native components with tooltips. What this means is that when the tooltip shows, rather than the actual wrapped element, it renders a copy of that element that is positioned absolutely on the screen. You can then touch the element in the dialog that appears above the screen.
Why choose React Native Walkthrough Tooltip?
If you would like a simple solution to add onboarding tours and walkthroughs to your React Native mobile app, this could be a good option. It has a decently sized community as well, with tens of thousands of downloads each week.
You can learn more about it on their GitHub.
7. Highlight overlay #
This is another one for React native mobile apps. As the name suggests, Highlight overlay is an overlay that highlights DOM elements and tints the rest. Aside from simply being able to highlight elements, you can create a flow in which the highlights switch from one element to another, which is useful for creating walkthroughs that guide users through different parts of the user interface.
Why choose Highlight overlay?
This is a super simple product tour solution for your React native mobile app. If you want something minimal, this could be a good option for you.
Check out their GitHub to see if this is the right solution for you.
8. Spotlight tour #
This is a React native tour library that is highly customizable with a spotlight effect that is the signature of this tool. It essentially puts a spotlight on each element you’d like to highlight and enables you to render a tooltip that explains the element.
Why choose Spotlight tour?
This onboarding tour library for React native mobile apps is very customizable. The spotlight animation is also super smooth. Try Spotlight tour if you’re looking to wow your users with an engaging product tour.
See their GitHub for more info.
Build React tours quickly and easily with Chameleon #
At the end of the day, you still have to commit considerable dev resources when you use an open-source onboarding library, and despite the lack of fees paid, going DIY might end up costing you much more, especially if you have other pressing product issues that demand your dev resources.
How about a no-code tool that can quickly deploy 😉? Chameleon provides an intuitive product tour builder for your React JS app. With it, you can create complex and targeted onboarding flows – and so much more.
Chameleon also offers many more features such as:
Fully customizable styling
Deep integrations with other tools
Native A/B testing of product tours
If you don’t have any dev resources to commit, a dedicated product adoption platform like Chameleon is truly the way to go since you’ll have a versatile toolset. With Tours, Tooltips, Launchers, and Microsurveys, you’ll be able to boost product/feature adoption, reduce churn, increase retention, and drive more conversions in addition to many other benefits for your product’s growth.