This repository contains an OpenFeature provider that allows ConfigCat to be used with the OpenFeature Rust SDK.
Run the following Cargo command in your project directory:
cargo add configcat-openfeature-providerOr add the following to your Cargo.toml:
[dependencies] configcat-openfeature-provider = "0.1"The ConfigCatProvider needs a pre-configured ConfigCat Rust SDK client:
use std::time::Duration; use configcat::{Client, PollingMode}; use open_feature::OpenFeature; use configcat_openfeature_provider::ConfigCatProvider; #[tokio::main] async fn main() { // Acquire an OpenFeature API instance. let mut api = OpenFeature::singleton_mut().await; // Configure the ConfigCat SDK. let configcat_client = Client::builder("<YOUR-CONFIGCAT-SDK-KEY>") .polling_mode(PollingMode::AutoPoll(Duration::from_secs(60))) .build() .unwrap(); // Configure the provider. api.set_provider(ConfigCatProvider::new(configcat_client)).await; // Create a client. let client = api.create_client(); // Evaluate a feature flag. let is_awesome_feature_enabled = client .get_bool_value("isAwesomeFeatureEnabled", None, None) .await .unwrap_or(false); }For more information about all the configuration options, see the Rust SDK documentation.
This repository contains a simple example application that you can run with:
cargo run --example print_evalContributions are welcome. For more info please read the Contribution Guideline.
ConfigCat is a feature flag and configuration management service that lets you separate releases from deployments. You can turn your features ON/OFF using ConfigCat Dashboard even after they are deployed. ConfigCat lets you target specific groups of users based on region, email or any other custom user attribute.
ConfigCat is a hosted feature flag service. Manage feature toggles across frontend, backend, mobile, desktop apps. Alternative to LaunchDarkly. Management app + feature flag SDKs.