Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Laravel Driver Js Laravel Package

amjadiqbal/laravel-driver-js

A Laravel wrapper for Driver.js that adds guided product tours and onboarding highlights to your Blade views. Define tour steps in PHP, publish the config, and highlight page elements with simple helpers—no custom JavaScript required.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Onboarding and activation flows: Ship guided first-run tours and feature walkthroughs without a third-party SaaS. Enables product decisions around time-to-value, empty-state education, and feature discovery.
  • Feature launch and release adoption: Named tours plus once('welcome-v1') let PMs re-surface a tour when a feature materially changes by bumping the key—useful for launch announcements and changelog-style spotlights.
  • Build vs. buy: For simple, in-product tours, this package makes “build on Driver.js” viable versus buying Appcues/Pendo/Userflow. Avoids vendor accounts, per-MAU pricing, and data-processing review for basic tours.
  • Roadmap sequencing: Low integration cost means tours can be scoped per feature rather than as a large platform investment. manual()/autoStart(false) supports registering tours that product decides to trigger contextually rather than automatically.
  • In-context help and support deflection: highlight() supports single-element hints, not just full tours—useful for pointing at new controls, permissions, or billing actions without a multi-step flow.
  • Instrumentation decisions: on($hook, 'window.fn') exposes Driver.js lifecycle hooks, enabling PMs to define completion/drop-off events and evaluate whether tours actually improve activation.
  • Platform fit for Livewire-heavy products: Named tours dispatchable from buttons, Alpine, Livewire, and compatible with wire:navigate make this suitable for admin panels and internal tools built with the Laravel/Livewire stack.

When to Consider This Package

Consider adoption when:

  • The product runs Laravel 12 or 13 on PHP 8.3+ and uses Blade, Alpine, and/or Livewire.
  • You need named, triggerable product tours rather than a single hard-coded walkthrough.
  • You want first-party, low-vendor-risk tours with Driver.js 1.10.2 loaded from jsDelivr with SRI, or self-bundled via assets.cdn = false.
  • You require CSP compliance; @driverJsAssets supports nonces when Vite::useCspNonce() is set.
  • You want to avoid a paid tour platform for simple onboarding, feature announcements, or one-off element highlights.
  • You are comfortable with a thin wrapper over an open-source JS library; lock-in is limited because tour configuration maps closely to Driver.js options.

Look elsewhere or defer when:

  • You are still on Laravel 10/11 or PHP 8.2—v1.0.0 intentionally drops these.
  • You need advanced targeting, segmentation, A/B testing, user-level tour state, or cross-device persistence. This package’s once() uses localStorage, so it is browser-local, not account-level.
  • You need complex multi-page tour orchestration with server-side progress, eligibility rules, or CRM integration; a dedicated product-tour platform or custom service is a better fit.
  • Your frontend is a heavy React/Vue SPA outside Blade/Livewire conventions—use Driver.js directly rather than a Laravel wrapper.
  • You require enterprise support/SLA. This is a single-maintainer community package; assess maintenance risk and pin versions.
  • You cannot accept a CDN dependency by default and do not want to configure local bundling.

Note: v0.1.0 was non-functional against current Driver.js and could not install on Laravel 12/13. Treat v1.0.0 as the first usable release, not as a migration from a working production baseline.

How to Pitch It (Stakeholders)

For executives: This gives us an inexpensive way to add in-app guided tours for onboarding and feature launches inside our existing Laravel product. It avoids a subscription product-tour vendor for basic needs and keeps user tour content in our codebase. The main cost is implementation and content authoring, not licensing.

For engineering: v1.0.0 is a corrected wrapper around Driver.js 1.10.2—previous v0.1.0 was broken (bad CDN URL, wrong Driver.js API, no Laravel 12/13 support). It adds named tours, button/Alpine/Livewire triggers, once() local persistence, option validation, lifecycle hooks, CSP nonce support, SRI-pinned CDN assets, and wire:navigate compatibility. Requirements are PHP 8.3+ and Laravel 12/13. Deprecated v0.1.0 methods remain but should not be used; several unused PHP builder methods were removed. Treat this as a new integration, not an upgrade path from working functionality.

For product and support stakeholders: We can ship targeted onboarding without waiting on a vendor procurement cycle. Tours can be re-shown after meaningful feature changes by versioning the once() key, and hooks let us measure completion if we instrument them. The trade-off is that persistence is browser-local, so it is best suited to simple guided tours rather than sophisticated user-segmented onboarding.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
elmogy/larafast
xeviant/laravel-paystack
gorilladash/laravel-website-sdk
martialbe/flysystem-oss
chondal/3312client
jeroen-g/flickr
opscale-co/nova-genbi
itsjustvita/laravel-retention
tequilarapido/trackit
gregsphotography/site-builder-filament
cabaoctavio/laravel-query-log
gregsphotography/site-builder-components
io-digital/clickatell
snowsoft/laravel-admin
oxygen/auth
relicsoftware/barakah-payment-gateway
tobya/work-with-composer
equipc/laravel-email-validator
equipc/laravel-email-database-log
adedsec/nova-translated-labels