Skip to content

Leptos Ws is a Websocket for the Leptos framework to support updates coordinated from the Server

License

Notifications You must be signed in to change notification settings

TimTom2016/leptos_ws

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Leptos Websocket

Crates.io docs.rs

Leptos Websocket provides server signals for Leptos, keeping them in sync with the server through WebSockets. This enables real-time updates on the UI controlled by the server.

Features

  • Server Signals: Read-only signals on the client side, writable by the server.
  • Real-time Updates: Changes to signals are sent through WebSockets as JSON patches.
  • Framework Integration: Supports integration with the Axum web framework.

Installation

Add the following to your Cargo.toml:

[dependencies]
leptos_ws = "0.7.0-rc1"
serde = { version = "1.0", features = ["derive"] }

[features]
ssr = ["leptos_ws/ssr", "leptos_ws/axum"]

Usage

Client-side

use leptos::prelude::*;
use serde::{Deserialize, Serialize};

#[component]
pub fn App() -> impl IntoView {
    // Connect to WebSocket
    leptos_ws::provide_websocket("http://localhost:3000/ws");

    // Create server signal
    let count = leptos_ws::ServerSignal::new("count".to_string(), 0 as i32).unwrap();

    view! {
        <h1>"Count: " {move || count.get().to_string()}</h1>
    }
}

Server-side (Axum)

Server-side implementation requires additional setup. Refer to the example for detailed examples.

Feature Flags

  • ssr: Enable server-side rendering support.
  • axum: Enable integration with the Axum web framework.

Documentation

For more detailed information, check out the API documentation.

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

Leptos Ws is a Websocket for the Leptos framework to support updates coordinated from the Server

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages