introduceme 1.0.1 copy "introduceme: ^1.0.1" to clipboard
introduceme: ^1.0.1 copied to clipboard

Introduce Me — a flexible, lightweight Flutter showcase and onboarding package with a smart tour engine and lean rendering core.

1.0.1 #

  • Branching tours: onDetermineNextStep(currentStep, currentIndex, steps) on TourController / IntroduceMeScopeWidget (and IntroduceMeScopeHandle) — consulted before every automatic advance so app code can redirect the tour to a different step based on custom logic (e.g. "if user has no account, jump to the sign-up step; otherwise run normally"). Return a step index to jump to, or null to keep the default in-order flow.
  • Example app: fix the "Branching demo" section being inserted above the cross-screen settings-toggle step on the Settings screen, which pushed it past the ListView's initial build window and made the onboarding tour skip it after tapping the Settings icon. It now sits after the onboarding controls instead.
  • Example app: fix "Start branching demo tour" appearing to do nothing — await dismiss() before start(), reset skipIfTargetNotPresent left over from the resilience demo, move the start button next to the branch-start anchor, and scroll that target into view before the tour begins.

1.0.0 #

  • Initial release.
  • Showcase widgets: Showcase, Showcase.auto, Showcase.withWidget, .introduceMe().
  • Smart tour engine with auto-discovery (id + order + tourId), cross-screen resume, and named scopes.
  • Cross-screen: defer advance after onTargetClick when the next step is on an unmounted route; order-gap detection so later mounted steps are not skipped; routeSettleDelay for stable tooltip positioning after route transitions; the outgoing tooltip is hidden immediately while waiting instead of lingering over the new route.
  • Fix: the overlay could silently miss updates right after a route push/pop finished animating (its rebuild was only deferred to "the next frame", which may never arrive if nothing else requests one) — the tooltip now reliably reappears for the next cross-screen step.
  • Tooltip placement (auto / above / below / left / right), arrows, and configurable actions.
  • Multi-showcase via groupId + isPrimary (soft cap 8 targets).
  • Overlay blur (blurValue), glass tooltip, floating action widget, and scroll loading widget.
  • Persistence (TourStorage, SharedPrefsTourStorage, MemoryTourStorage) and analytics hooks.
  • Lean rendering: single OverlayPortal, throttled/coalesced position tracking, performance-safe defaults.
  • Accessibility: enableSemantics on scope and per step (default true) — screen-reader labels on overlay hit areas and default tooltips.
  • Resilience: skipIfTargetNotPresent + missingTargetTimeout — auto-skip steps whose target never becomes visible; fires TourAnalytics.onStepSkipped.
  • Auto-scroll toggle: enableAutoScroll on scope and per step (default true). When false, the tour waits for manual scroll; scrollAlignment only applies when auto-scroll runs.
  • Dismiss reasons: onDismiss(tourId, TourDismissReason) on scope — skipped, barrierTap, disabledScope, programmatic (not fired on normal tour completion).
  • Tooltip actions: per-button backgroundColor, textColor, textStyle, borderRadius, padding, hideWhen predicate, and TooltipActionPosition (inside / outside).
  • Look presets: ShowcaseLook (material, ios, glass, neumorphism, retro, neoBrutalism) via IntroduceMeTheme.look and per-step look — styles tooltip, buttons, and target highlight ring (not barrier/blur).
  • Example app: demo steps, Settings look dropdown, resilience tour, onDismiss SnackBar.
  • Tests: widget tests in test/features_priority_test.dart.
4
likes
160
points
149
downloads

Documentation

API reference

Publisher

verified publisheranonimeact.com

Weekly Downloads

Introduce Me — a flexible, lightweight Flutter showcase and onboarding package with a smart tour engine and lean rendering core.

Repository (GitHub)
View/report issues

License

MIT (license)

Dependencies

flutter, shared_preferences

More

Packages that depend on introduceme