Crate supabase_realtime_rs

Crate supabase_realtime_rs 

Source
Expand description

§Supabase Realtime Rust

An unofficial Rust client for Supabase Realtime (Phoenix Channels WebSocket protocol).

§Example

use supabase_realtime_rs::{RealtimeClient, RealtimeClientOptions};

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    let client = RealtimeClient::new(
        "wss://your-project.supabase.co/realtime/v1",
        RealtimeClientOptions {
            api_key: "your-anon-key".to_string(),
            ..Default::default()
        }
    )?;

    client.connect().await?;
    Ok(())
}

Re-exports§

pub use channel::ChannelState;
pub use channel::ColumnInfo;
pub use channel::EventPayload;
pub use channel::PostgreInsertPayload;
pub use channel::PostgresChangeEvent;
pub use channel::PostgresChangesFilter;
pub use channel::PostgresChangesPayload;
pub use channel::PostgresDeletePayload;
pub use channel::PostgresUpdatePayload;
pub use channel::RealtimeChannel;
pub use channel::RealtimeChannelOptions;
pub use client::ClientState;
pub use client::ConnectionManager;
pub use client::ConnectionState;
pub use client::RealtimeClient;
pub use client::RealtimeClientOptions;
pub use messaging::ChannelEvent;
pub use messaging::PostgresChangeFilter;
pub use messaging::PostgresChangeType;
pub use messaging::SystemEvent;
pub use types::RealtimeError;
pub use types::RealtimeMessage;

Modules§

channel
client
infrastructure
messaging
types
websocket