Skip to content

get-convex/convex-rs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

goffrieConvex, Inc.
and
Convex, Inc.
May 21, 2025
a97d4b4 · May 21, 2025
Jan 22, 2025
Mar 6, 2025
May 13, 2025
Mar 8, 2025
Apr 26, 2023
Feb 20, 2025
Jan 31, 2025
May 21, 2025
Mar 6, 2025
Mar 13, 2024
Dec 21, 2024
Oct 9, 2024

Repository files navigation

Convex

The official Rust client for Convex.

GitHub

Convex is the backend application platform with everything you need to build your product.

This Rust client can write and read data from a Convex backend with queries, mutations, and actions. Get up and running at docs.convex.dev.

Join us on Discord to share what you're working on or get your questions answered.

Installation

Add the following to your Cargo.toml file

[dependencies]
convex = "*"

Example

let mut client = ConvexClient::new(DEPLOYMENT_URL).await?;
let mut subscription = client.subscribe("getCounter", vec![]).await?;
while let Some(new_val) = subscription.next().await {
    println!("Counter updated to {new_val:?}");
}

Documentation

Check out the full convex documentation at docs.convex.dev The rust API docs are available on docs.rs

MSRV

The Convex rust client works on stable rust 1.71.1 and higher. It also works on nightly.

Debug Logging

The Convex Rust Client uses the tracing crate for logging. One common way of initializing is via tracing_subscriber. Then, you can see debug logging by running your program with RUST_LOG=convex=debug.

tracing_subscriber::fmt()
    .with_env_filter(tracing_subscriber::EnvFilter::from_default_env())
    .init();

By default, this will emit all logs, including internal logs from the client. Logs from your Convex backend will show up under the convex_logs target at Level=DEBUG. If you want to isolate just those logs, please refer to the tracing_subscriber documentation.