vuetifyjs / vuetifyjs/0

[Feature Request] createTour: headless tour primitive — mask cutout, passthrough, per-step a11y

Open
#515 0 comments 0 reactions 1 assignee View on GitHub

@johnleider is already working on this.

Since Jul 6, 2026.

E: createTour T: feature
Dominant language
TypeScript
Stars
735
Forks
10
Avg merge
10h 47m
Merged PRs (30d)
72

Description

Build the createTour composable — step orchestration, target-rect tracking, SVG-mask cutout geometry, interaction passthrough, and per-step a11y, composing createStep / usePopover / useRovingFocus / observers.

Part of the v1.2.0 epic (#508). The Tour component shell builds on this.

Category semantic and the name createTour are provisional — adjust at implementation.

Checklist — new-feature checklist, composables

  • packages/0/src/composables/createTour/index.ts (+ index.test.ts)
  • packages/0/src/composables/index.ts — add export * from './createTour' (alphabetical)
  • packages/0/src/maturity.json — add createTour entry: level: preview, since: null, category: semantic, description
  • apps/docs/src/pages/composables/semantic/tour.md — docs page with frontmatter
  • apps/docs/src/examples/composables/tour/basic.vue — basic example
  • apps/docs/src/pages/composables/index.md — table entry (semantic section)
  • packages/0/README.md — What's Included table
  • root README.md — keep in sync
  • packages/0/src/surface.test.ts — add exports to COMPOSABLES freeze array (sorted)
  • <DocsApi /> renders + feature appears in api-whitelist.ts after build
  • pnpm build:0 && pnpm typecheck && pnpm lint:fix && pnpm build:docs green

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.