Project Description

Drupal has a steep learning curve for newcomers, particularly those without prior CMS experience. New users often struggle to understand where to start, how to create their first content, configure basic settings, or navigate Drupal's administrative interface. The lack of interactive, contextual guidance leads to frustration, increased support requests, and potential abandonment of the platform by new users who find the initial experience overwhelming.

This project aims to develop an Interactive Product Tour module that provides step-by-step, contextual guidance for new Drupal users. The solution will implement an intelligent, interactive tutorial system that guides users through essential tasks such as creating their first page, adding content types, managing menus, configuring site settings, and understanding Drupal's core concepts. The tour will use modern UI patterns including tooltips, highlights, modal overlays, and progressive disclosure to make learning intuitive and engaging.

The module will feature multiple tour paths tailored to different user roles (content editor, site builder, developer) and use cases. It will integrate seamlessly with Drupal's existing Tour module while extending its capabilities with interactive elements, progress tracking, and smart recommendations. The tours will be contextual, appearing at relevant times and adapting based on user behavior and completion progress.

By providing an interactive, guided onboarding experience, this module will significantly reduce the time required for new users to become productive with Drupal, decrease support burden on site administrators, and improve user satisfaction and retention.

Project Goal

    Functional Changes / User Interface Changes:
  • Develop an interactive tutorial system that guides users through creating their first Drupal page step-by-step.
  • Create multiple tour paths for different personas (content editor, site builder, administrator, developer).
  • Implement contextual tooltips, highlights, and interactive prompts that appear at relevant interface elements.
  • Build a progress tracking system showing tour completion status and remaining steps.
  • Design a tour launcher accessible from the toolbar with quick access to available tours and learning resources.
  • Implement smart tour triggers based on user actions, page visits, and role assignments.
  • Create a "Resume Tour" feature that allows users to continue interrupted tutorials.
  • Add tour customization options for site administrators to create custom tours for their specific setup.
    DB Changes / API Changes:
  • Create database tables for storing user tour progress, completion status, and preferences.
  • Design configuration schema for tour definitions, steps, and trigger conditions.
  • Implement a pluggable tour provider API allowing custom tours to be added via modules.
  • Develop AJAX endpoints for tracking tour progress and user interactions in real-time.
  • Create APIs for programmatically starting, pausing, and completing tours based on events.

Mentor Details

Name: Aditya Bathani, Rajas Samse

Email / Slack: ASB - Slack, adityabathani.4478@gmail.com, @Rajas Samse OR samserajas@gmail.com

Project Size

350 Hours

Project Difficulty

Beginner to Intermediate

Project Skills/Prerequisite

  • Proficiency in PHP and JavaScript (ES6+)
  • Experience with Drupal module development and theming
  • Strong understanding of UI/UX design principles and user onboarding best practices
  • Familiarity with modern JavaScript libraries (React, Vue.js, or similar) for interactive UI components
  • Knowledge of Drupal's Tour module and existing guidance systems
  • Experience with CSS animations and transitions for smooth user experiences
  • Understanding of accessibility standards (WCAG) for inclusive design

Project Resources

R&D Tasks

  • Research existing product tour libraries and evaluate their compatibility with Drupal's architecture.
  • Analyze user research and feedback to identify the most critical onboarding pain points.
  • Design tour flows for different user personas with appropriate branching and progression.
  • Develop a framework for extending Drupal's core Tour module with interactive capabilities.
  • Create engaging, accessible UI components for tour elements (tooltips, highlights, modals).
  • Implement analytics to track tour effectiveness, completion rates, and user drop-off points.
  • Test tours with actual new Drupal users and iterate based on feedback.
  • Explore gamification elements (badges, achievements) to encourage tour completion.
  • Document best practices for creating effective product tours in Drupal.

Comments

aditya4478 created an issue. See original summary.

aditya4478’s picture

Issue summary: View changes
aditya4478’s picture

Issue summary: View changes
aditya4478’s picture

Issue summary: View changes
aditya4478’s picture

Priority: Minor » Normal
gauri berad’s picture

Hello mentors,

My name is Gauri Berad and I am interested in applying for Google Summer of Code 2026 with Drupal.

The "Interactive Product Tour for Drupal Core" project caught my interest because improving onboarding for new users is very important for complex systems like Drupal.

I am currently exploring the Drupal Tour module and researching libraries like Intro.js and Shepherd.js to understand how interactive tours could be integrated into Drupal.

Could you please guide me on how I can start contributing or which issues would be suitable for beginners?

Thank you.

aditya4478’s picture

Title: Proposal 2026: Interactive Product Tour for Drupal Core » Proposal 2027: Interactive Product Tour for Drupal Core