#leptos #component #hook #utilities #vue-use #solid-js-use #vueuse #react-hooks #solidjs-use

leptos-use

Collection of essential Leptos utilities inspired by React-Use / VueUse / SolidJS-USE

82 releases (15 breaking)

0.16.0-beta Mar 20, 2025
0.15.7 Mar 17, 2025
0.15.1 Dec 31, 2024
0.14.0-rc5 Nov 27, 2024
0.6.0 Jul 17, 2023

#24 in GUI

Download history 2526/week @ 2024-12-27 5350/week @ 2025-01-03 6013/week @ 2025-01-10 4796/week @ 2025-01-17 4793/week @ 2025-01-24 6095/week @ 2025-01-31 6384/week @ 2025-02-07 6496/week @ 2025-02-14 5924/week @ 2025-02-21 6915/week @ 2025-02-28 4948/week @ 2025-03-07 5224/week @ 2025-03-14 4963/week @ 2025-03-21 3954/week @ 2025-03-28 4181/week @ 2025-04-04 4231/week @ 2025-04-11

18,055 downloads per month
Used in 25 crates (24 directly)

MIT/Apache

680KB
13K SLoC


Leptos-Use – Collection of essential Leptos utilities

Collection of essential Leptos utilities

Inspired by React-Use / VueUse

Crates.io SSR Docs & Demos 88 Functions




Usage

Crates.io Total Downloads Docs MIT/Apache 2.0 Build Status Discord

use leptos::prelude::*;
use leptos_use::{use_mouse, UseMouseReturn};

#[component]
fn Demo() -> impl IntoView {
    let UseMouseReturn { x, y, .. } = use_mouse();

    view! { cx,
        {x} " x " {y}
    }
}

Missing a function? Open a ticket or PR!

Development

To run all tests run

# Run tests (general)
cargo test --features math,docs,ssr

# Run tests (axum) use_cookie
cargo test --features math,docs,ssr,axum --doc use_cookie

# Run tests (axum) use_locale
cargo test --features math,docs,ssr,axum --doc use_locale

# Run tests (actix) use_cookie
cargo test --features math,docs,ssr,actix --doc use_cookie

# Run tests (actix) use_locale
cargo test --features math,docs,ssr,actix --doc use_locale

Book

First you need to install

cargo install mdbook mdbook-cmdrun trunk

To build the book go in your terminal into the docs/book folder and run

mdbook serve

This builds the html version of the book and runs a local dev server. To also add in the examples open another shell and run

python3 post_build.py

If you only want to add the example for one function you can run for example

python3 post_build.py use_storage

New Function Template

To scaffold a new function quickly you can run template/createfn.sh. It requires that ffizer and Python 3 is installed. This will create the function file in the src directory, scaffold an example directory and an entry in the book.

Leptos compatibility

Crate version Compatible Leptos version
<= 0.3 0.3
0.4, 0.5, 0.6 0.4
0.7, 0.8, 0.9 0.5
0.10 – 0.13 0.6
0.14, 0.15 0.7
0.16 0.8

Dependencies

~23–40MB
~650K SLoC