Laravel Packages

Hooks for Alpine.js

Published
Hooks for Alpine.js image

The Alpine Hooks module is a collection of hooks for use with Alpine.js. This package contains a variety of hooks used to improve the developer experience (DX) for common Alpine tasks.

At the time of writing this module has the following hooks:

  • $useHover() - react to the mouse hovering over an element
  • $useFocus() - react to an element being focused and blurred
  • $useHash() - update and react to changes to window.location.hash
  • $useWindowSize() - returns the window width and height and react to changes to window size

Here's an example of $useHover() from the examples folder on GitHub:

<div x-data="{ hovering: $useHover($refs.target) }" class="py-8">
<div
class="w-52 h-64 rounded bg-red-500 transition-colors ease-in-out duration-300 mx-auto flex items-center justify-center"
x-bind:class="{
'bg-red-500': !hovering,
'bg-blue-500': hovering
}"
x-ref="target"
>
<p class="font-medium" x-text="hovering ? 'Hovering...' : 'Not hovering...'"></p>
</div>
</div>

You can install this package in your project with npm:

npm install @ryangjchandler/alpine-hooks

You can learn more about this package, get full installation instructions, and view the source code on GitHub.

Paul Redmond photo

Staff writer at Laravel News. Full stack web developer and author.

Sponsored

laravelcloud logo
Laravel Cloud

Easily create and manage your servers and deploy your Laravel applications in seconds.

Visit Laravel Cloud

The latest

View all →
PayZephyr: One Payment API for Stripe, Paystack, and PayPal image

PayZephyr: One Payment API for Stripe, Paystack, and PayPal

Read article
Bifrost Turns One With AI Builds and New Workflows image

Bifrost Turns One With AI Builds and New Workflows

Read article
Preview Blade Templates in macOS Finder with Quick Blade image

Preview Blade Templates in macOS Finder with Quick Blade

Read article
Artisan Debugging Commands in Laravel Telescope 5.24.0 image

Artisan Debugging Commands in Laravel Telescope 5.24.0

Read article
Queue totalSize() and JobInterrupted Event in Laravel 13.31 image

Queue totalSize() and JobInterrupted Event in Laravel 13.31

Read article
Find Unexpected Test Inputs with Fuzz for Pest image

Find Unexpected Test Inputs with Fuzz for Pest

Read article