leptos_verlet 1.0.0

An engine to perform Verlet simulations in Leptos apps.
Documentation

crates.io docs.rs

Leptos Verlet

use leptos_verlet::prelude::*;

#[component]
pub fn App() -> impl IntoView {
    let verlet_container = NodeRef::<Div>::new();

    let active_modifier: RwSignal<ModificationTarget> = RwSignal::new(ModificationTarget::None);

    view! {
        <VerletConfigProvider/>

        <main class="w-screen h-screen flex items-center justify-center overflow-hidden relative">
            <ElementPane active_modifier/>
            <InfoModal active_modifier/>

            <div
                node_ref=verlet_container
                class="w-full h-full relative"
            >
                <VerletCanvas parent_element=verlet_container/>

                <MouseMonitor active_modifier/>
            </div>

            <ControlPane active_modifier/>
        </main>
    }
}