Premiers pas

Prerequis

  • Toolchain Rust (stable, edition 2021)
  • Trunk pour compiler et servir les applications WASM
  • La cible wasm32-unknown-unknown
rustup target add wasm32-unknown-unknown
cargo install trunk

Demarrage rapide

Leptos
Vanilla JS
Dioxus
Yew

Ajoutez rs-grid-leptos a votre Cargo.toml :

Cargo.toml
[dependencies]
rs-grid-leptos = { path = "../rs-grid-leptos" }

Importez le composant et montez-le dans une vue Leptos :

src/main.rs
use leptos::*;
use rs_grid_leptos::GridCanvas;

#[component]
pub fn App() -> impl IntoView {
    view! {
        <main style="width: 100vw; height: 100vh;">
            <GridCanvas
                rows=1_000_000_u64
                cols=50_usize
            />
        </main>
    }
}

fn main() {
    leptos::mount_to_body(App);
}

Lancez l'exemple :

cd examples/basic-leptos
trunk serve

Rendez-vous sur http://localhost:8080. Vous devriez voir un grid affichant 1 million de lignes a 60 fps.

Compiler pour la production

cd examples/basic-leptos
trunk build --release

La sortie est generee dans dist/. Servez-la avec n'importe quel serveur de fichiers statiques ou utilisez l'image Docker fournie.

Commandes du workspace

CommandeDescription
cargo check --workspaceVerification rapide des types pour tous les crates
cargo test --workspaceLancer tous les tests unitaires
cargo fmt --allFormater l'ensemble du workspace
cargo clippy --workspace -- -D warningsLint avec warnings traites comme erreurs
trunk serve (dans le dossier exemple)Serveur de dev avec hot reload
Tip

rs-grid-core n'a aucune dependance WASM — ses tests unitaires s'executent avec un simple cargo test, sans navigateur.