No description
  • TypeScript 97.7%
  • Shell 0.7%
  • JavaScript 0.5%
  • Python 0.5%
  • HTML 0.4%
  • Other 0.2%
Find a file
Eason ae33fbe63f
Merge pull request #518 from usertour/staging
release: show what uses a definition before deleting it
2026-09-25 15:00:52 +08:00
.github/workflows ci: publish the MCP registry entry on release tags 2026-09-06 20:16:12 +08:00
.husky chore: configure lint-staged for Biome checks 2025-02-13 17:20:02 +08:00
apps feat(web): tidy the in-use dialog into a scannable list 2026-09-25 13:01:53 +08:00
assets chore: use the wordmark spelled Usertour in the README, drop two unreferenced logo files 2026-09-16 16:14:46 +08:00
docs fix(references): count question bindings only while on and only for user attributes 2026-09-24 15:25:13 +08:00
integrations chore(hubspot): the production callback lives on the dashboard host 2026-09-11 11:14:39 +08:00
nginx fix: cohort sync review findings — delivery chain, round replay, guards 2026-08-31 21:37:38 +08:00
packages feat(web): tidy the in-use dialog into a scannable list 2026-09-25 13:01:53 +08:00
scripts feat: RUN_SEED flag skips the startup seed per instance 2026-09-01 12:45:51 +08:00
.dockerignore chore(dependencies): update .gitignore and Dockerfile for improved build process 2026-01-13 16:37:10 +08:00
.env.example fix(server): bootstrap fails fast; TRUST_PROXY input hardened; XFP survives merged headers 2026-08-15 19:46:13 +08:00
.gitignore fix(gitignore): repair entry mangled by a newline-less append 2026-08-26 20:40:51 +08:00
.npmrc feat: open source 2025-01-24 18:42:53 +08:00
biome.json fix: zapier second-round review — typed coercion, shared ingest core, scoped biome ignore 2026-09-02 11:06:51 +08:00
CONTRIBUTING.md feat: Add Google Tag Manager integration with Next.js third-parties 2025-02-23 20:10:13 +08:00
docker-compose.yml chore(docker): update Dockerfile and docker-compose.yml for improved compatibility 2025-12-07 21:58:18 +08:00
Dockerfile feat(emails): render transactional emails with React templates instead of mjml + handlebars 2026-09-16 13:52:55 +08:00
LICENSE feat(license): restructure licensing to MIT and remove AGPL references 2026-03-19 17:27:05 +08:00
LICENSE.enterprise Update licensing information and add enterprise license 2026-03-19 17:05:05 +08:00
package.json feat(emails): render transactional emails with React templates instead of mjml + handlebars 2026-09-16 13:52:55 +08:00
pnpm-lock.yaml feat(emails): render transactional emails with React templates instead of mjml + handlebars 2026-09-16 13:52:55 +08:00
pnpm-workspace.yaml feat(emails): render transactional emails with React templates instead of mjml + handlebars 2026-09-16 13:52:55 +08:00
postcss.config.cjs feat(packages): Adapt to Biome and Husky syntax checks 2025-02-13 16:47:51 +08:00
README.md docs(readme): lead the AI section with the universal MCP endpoint 2026-08-17 09:32:26 +08:00
server.json chore: declare the MCP server for the official registry 2026-09-06 18:57:39 +08:00
tsconfig.json fix(admin): specify number type in usage reducer for type safety 2026-04-12 13:14:03 +08:00
turbo.json feat(emails): render transactional emails with React templates instead of mjml + handlebars 2026-09-16 13:52:55 +08:00

Usertour

usertour logo

Usertour: An alternative to: Appcues, Userpilot, Userflow, Userguiding, Chameleon , Etc...

Usertour is an open-source user onboarding platform. It allows you to create in-app product tours, checklists, and surveys in minutes—effortlessly and with full control.

Website | Documentation | Blog | Twitter | Discord

Static Badge Static Badge Discord Chat Static Badge

Quick Start

Self-deploy with Docker

Deploy your own feature-rich, unlimited version of Usertour using Docker.

To start deployment:

cp .env.example .env # make sure all required envs are properly set
docker compose up -d

Visit http://localhost:8011 to start using Usertour.

View details in Self-hosting.

One Click Deployment

Deploy on Railway

Local Development

View details in CONTRIBUTING.

✨ Build Your Onboarding with AI

Usertour ships a built-in MCP server: connect an AI assistant like Claude Code, Cursor or Codex, describe the experience you want, and it builds production-ready onboarding directly in your project — reading your app's design system to match the styling, and even wiring up the SDK on its own if it isn't installed yet.

Point any MCP client at the endpoint — it discovers the authorization flow on its own:

https://mcp.usertour.io/mcp

Using Claude Code? The plugin wires the MCP connection and the authoring skills in one:

/plugin marketplace add usertour/skills
/plugin install usertour@usertour

Per-client steps for Cursor, Codex, VS Code, ChatGPT and more: MCP connection guide.

Self-hosting? Use your own instance's URL instead — it's shown in Settings → MCP (for the Claude Code plugin, export it before launching):

export USERTOUR_MCP_URL="https://<your-usertour-host>/mcp"

Below: real prompts and the unedited results. Full walkthrough with every prompt — including AI-driven analytics — in Build Your Onboarding with AI.

🪄 "Build an onboarding flow for the Create Task feature"

Using Usertour, build a user onboarding flow for the Create Task feature.

Requirements:
1. The visual theme must match the website's existing design.
2. The flow must be production-ready and suitable for launch.
3. Every step should provide genuine value to users. Avoid adding steps
   simply for the sake of having a flow—the experience should help users
   understand and successfully use the feature.

📋 "Create a product feedback survey"

Create a survey to collect user feedback about the product's different
features, including:

* Feature ratings
* Overall satisfaction
* Usability feedback
* Suggestions for improvement
* Open-ended comments

The survey should be thoughtfully structured and suitable for production use.

🎬 "A modal that plays this YouTube video"

Create a one-step flow containing a modal that displays this YouTube video:

https://www.youtube.com/watch?v=ZIaOBAjvc38

Add supporting copy based on the theme:

Sam Altman: "Never a Better Time to Do a Startup"

The copy should briefly introduce the video, explain why it is relevant,
and encourage users to watch it.

Features

Usertour makes it easy to design in-app product tours, checklists, launchers, and surveys, enabling anyone to craft effective onboarding experiences. Our team is dedicated to consistently improving Usertour with frequent updates that include new features, bug fixes, and performance enhancements.

Easy Onboarding: Build Flows Fast with Simple Integration and Smart Targeting

  • 🌐 Compatible with all frameworks: If your app runs in a browser, it seamlessly integrates with Usertour.
  • 📄 Supports multi-page apps: Whether it's a single-page application or spans across multiple pages, Usertour fits perfectly.
  • 🎯 Advanced user targeting: Define custom user attributes and track events to segment and engage your audience effectively.

Built for professional workflows with version control and environments

  • 🛠️ Multiple environments supported: Manage environments like Production and Staging within a single Usertour account.
  • 🔄 Version tracking: Monitor every change in your flows, including who made adjustments and when.

Fully customizable appearance

  • 🎨 Tailor your design: Adjust text, button colors, font family, and size to match your branding.
  • 🖌️ Support for multiple themes: Create unique themes for different flows, offering flexibility for varied use cases.

Gain actionable insights with powerful analytics

  • 📊 Performance metrics: Track the effectiveness of your flows with detailed data on views and completion rates.
  • 🚨 Identify problem areas: Pinpoint steps causing user confusion or drop-offs and address the issues seamlessly.

How to Use?

  • Cloud
    • We've deployed a Usertour Cloud version that allows zero-configuration usage, offering all capabilities of the self-hosted version. Visit https://www.usertour.io/ to get started.
  • Self-hosting Usertour Community Edition
    • Get started quickly with our Self-hosting Guide to run Usertour in your environment. For more detailed references and in-depth instructions, please refer to our documentation.
  • Usertour for enterprise / organizations

Contributing Guidelines

Bug Reports Feature Requests Issues/Discussions Usertour Community
Create Bug Report Submit Feature Request View GitHub Discussions Visit Usertour Community
Something isn't working as expected Ideas for new features or improvements Discuss and raise questions A place to ask questions, learn, and connect with others

Calling all developers, testers, tech writers and more! Contributions of all types are more than welcome, please feel free to browse our GitHub issues to show us what you can do.

For bug reports, feature requests, and other suggestions, you can also create a new issue and choose the most appropriate template to provide feedback.

If you have any questions, feel free to reach out to us. One of the best places to get more information and learn is the Usertour Community, where you can connect with other like-minded individuals.

Community and Contact

  • GitHub Discussion: Best for sharing feedback and asking questions.
  • GitHub Issues: Best for reporting bugs and suggesting features when using Usertour. Please refer to our contribution guidelines.
  • Discord: Best for sharing your applications and interacting with the community.
  • X(Twitter): Best for sharing your applications and staying connected with the community.

Security Issues

To protect your privacy, please avoid posting security-related issues on GitHub. Instead, send your questions to support@usertour.io, and we will provide you with a more detailed response.

Credits

Some icons are provided by Remix Icon (https://remixicon.com), licensed under the Apache License.

License

Community code is licensed under the MIT license. See LICENSE.

Enterprise-licensed code for self-hosted Business and Enterprise plans is governed by LICENSE.enterprise.