| Crates.io | tauri-plugin-sse |
| lib.rs | tauri-plugin-sse |
| version | 0.1.1 |
| created_at | 2025-11-03 01:13:43.739753+00 |
| updated_at | 2025-11-20 01:26:37.22389+00 |
| description | A simple Tauri plugin for Server-Sent Events (SSE), enabling real-time, one-way updates from server to your Tauri frontend. |
| homepage | |
| repository | |
| max_upload_size | |
| id | 1913758 |
| size | 191,790 |
Server-Sent Events (SSE) is a web technology that allows a server to push real-time updates to a client over a long-lived HTTP connection.
It provides a lightweight, one-way communication channel, making it ideal for applications that need continuous data streaming from the backend without using WebSockets.
SSE is a simple solution for notifications, activity feeds, live status updates, or any scenario where the server needs to send real-time updates to the client.
This project uses the sse_client crate for handling SSE connections on the Rust side (Tauri's backend).
Sample Usage:
| Platform | Supported |
|---|---|
| Linux | ✓ |
| Windows | ✓ |
| macOS | not tested |
| Android | not tested |
| iOS | not tested |
cargo add tauri-plugin-sseimport EventSource from "tauri-plugin-sse";
// Create connection to server endpoint
const source = new EventSource("https://sse.dev/test");
// Handle on establishing connection
source.onopen = () => {
console.log("Connection stabilished!");
};
// Fired when a message is received
source.onmessage = (event) => {
console.log("Message from server:", event.data);
};
// Handle errors
source.onerror = (err) => {
console.error("EventSource failed:", err);
};
// Handle named event types
source.addEventListener("ping", (event) => {
console.log("Ping:", event.data);
});
// Remove handler
removeEventListener("ping");
// Close Event Source
source.close();
// TODO: Add use of right modules
// Create connection to server endpoint
let event_source = EventSource::new("https://sse.dev/test").unwrap();
// Handle on establishing connection
event_source.on_open(|| {
println!("Connection stabilished!");
});
// Fired when a message is received
event_source.on_message(|message| {
println!("New message event {:?}", message);
});
// Handle errors
event_source.on_error(|error| {
println!("Error {:?}", error);
});
// Handle named event types
event_source.add_event_listener("myEvent", |event| {
println!("Event {} received: {}", event.type_, event.data);
});
// Remove handler
event_source.remove_event_listener("myEvent");
// Close Event Source
event_source.close();
MIT or MIT/Apache 2.0 where applicable.