ld_relay_client 1.0.1 copy "ld_relay_client: ^1.0.1" to clipboard
ld_relay_client: ^1.0.1 copied to clipboard

A client implementation for LaunchDarkly Relay Proxy in Dart

ld-relay-client-dart #

GitHub Actions Pub

A client implementation for Relay Proxy of LaunchDarkly in Dart.

How to use #

Step 1: Installation #

dart pub add ld_relay_client

Step 2: Initialize the client #

import 'package:ld_relay_client/ld_relay_client.dart';
import 'package:http/http.dart' as http;
import 'package:logger/logger.dart';

final client = LDRelayClient(
  LDRelayConfig(
    sdkKey: '<your-server-sdk-key>', // your LaunchDarkly server-side SDK key (caution: The SDK key should be kept a secret)
    ldRelayBaseUrl: 'http://localhost:8030', // the base URL for Relay Proxy
  ),
  http.Client(),
  Logger(),
);

Step 3: Evaluate the flag value and switch the logic #

// with single context
final evalResultWithSingleContext =
    await client.boolVariation('flag-key1', false, {
  'user': LaunchDarklyContextAttribute(key: 'user1'),
});

if (evalResultWithSingleContext) {
  // do something
} else {
  // do something else
}

// with multi contexts
final evalResultWithMultiContext =
    await client.boolVariation('flag-key2', false, {
  'user': LaunchDarklyContextAttribute(key: 'user2'),
  'tenant': LaunchDarklyContextAttribute(key: 'tenant2'),
});

if (evalResultWithMultiContext) {
  // do something
} else {
  // do something else
}
0
likes
130
pub points
0%
popularity

Publisher

unverified uploader

A client implementation for LaunchDarkly Relay Proxy in Dart

Repository (GitHub)
View/report issues

Documentation

API reference

License

unknown (LICENSE)

Dependencies

freezed_annotation, http, logger, meta, quiver

More

Packages that depend on ld_relay_client