keyspot 0.3.1 copy "keyspot: ^0.3.1" to clipboard
keyspot: ^0.3.1 copied to clipboard

Interactive onboarding and guided tours for Flutter. Highlight widgets, teach gestures with an animated pointer, and track targets live so nothing drifts.

0.3.1 #

Documentation and presentation only — no API or behaviour changes.

  • Repositioned the package around interactive onboarding and guided tours, rather than the spotlight implementation detail.
  • Fixed the installation instructions, which still showed the pre-publish git dependency on pub.dev (a package's README is frozen at publish time, so the correction only reaches readers via this release).
  • Added pub.dev screenshots.
  • Reorganised the README so each capability is introduced next to the demonstration of it, and added an at-a-glance capability table.

0.3.0 #

Implements the full 0.1–0.3 surface described in SPEC.md. The package is feature-complete and unpublished; the API may still move before 1.0.

Spotlight #

  • KeyspotController.spotlight() with SpotShape.auto/circle/rrect/stadium/path, configurable ring stacks, and per-ring opacity pulses.
  • Action-scoped spotlights via until:, timed via duration:, or held until hideSpotlight().
  • SpotBarrier with passthrough, block (default), dismissOnTap and targetOnly — the last forwards the tap to the real widget and resolves.
  • Automatic scroll-into-view before the spotlight appears.
  • Graceful fade-out and future resolution when the target unmounts mid-spotlight.

Pointer #

  • KeyspotPointer.show/moveTo/sweep/tapPulse/hide, every future completing on real animation completion rather than a guessed delay.
  • Rotation as an explicit Rotation.degrees/radians value type, animated from the current angle along the shortest path.
  • MotionPath.line and MotionPath.arc trajectories.
  • Built-in CustomPainter hand with no assets, replaceable by any widget through PointerStyle.builder.

Tours #

  • KeyspotTour, KeyspotStep, TourSession with next/previous/skip.
  • StepAdvance.tapTarget/tapAnywhere/manual/after(duration), each mapping to a sensible default barrier.
  • KeyspotTourStorage interface plus InMemoryTourStorage; plug your own persistence in.
  • Step content cards positioned automatically above or below the cut-out.

Tracking and accessibility #

  • KeyspotAnchorTracker exposed publicly with TrackingMode.everyFrame, onScrollAndMetrics and once.
  • Reduced motion honoured through MediaQuery.disableAnimations.
  • semanticLabel announcements, RTL-aware alignments, and flipForRtl artwork.

Foundations #

  • KeyspotTheme as a ThemeExtension, resolved parameter → scope → theme → defaults.
  • Injected logger, silent by default.
  • Disposal-safe notifications: every pending future completes rather than erroring.

0.0.1 #

  • Initial development preview. Claims the package name and publishes the planned API surface (see README). First functional release will be 0.1.0.
14
likes
160
points
87
downloads
screenshot

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

Interactive onboarding and guided tours for Flutter. Highlight widgets, teach gestures with an animated pointer, and track targets live so nothing drifts.

Homepage
Repository (GitHub)
View/report issues
Contributing

Topics

#onboarding #showcase #tutorial #spotlight #walkthrough

License

MIT (license)

Dependencies

flutter

More

Packages that depend on keyspot