openfeature_provider_intellitoggle 0.0.5 copy "openfeature_provider_intellitoggle: ^0.0.5" to clipboard
openfeature_provider_intellitoggle: ^0.0.5 copied to clipboard

Official IntelliToggle provider for the OpenFeature Dart Server SDK.

openfeature_provider_intellitoggle #

An OpenFeature provider for IntelliToggle, enabling Dart backends to evaluate feature flags using the OpenFeature API standard.

This package integrates seamlessly with openfeature_dart_server_sdk and supports IntelliToggle's advanced targeting, rule-based rollouts, and experimentation platform.


πŸ”§ Features #

  • βœ… Supports Boolean, String, Number, and Object flag evaluations
  • πŸ” Real-time updates via IntelliToggle event system
  • πŸ§ͺ Includes InMemoryProvider for local development and testing
  • 🌐 Optional OREP/OPTSP server support for remote evaluation (e.g. test suites)

πŸ’» Installation #

Add to your server-side Dart project:

dependencies:
  openfeature_dart_server_sdk: ^0.1.0
  openfeature_provider_intellitoggle: ^0.0.2

Then install:

dart pub get

πŸš€ Getting Started #

import 'package:openfeature_dart_server_sdk/openfeature_dart_server_sdk.dart';
import 'package:openfeature_provider_intellitoggle/openfeature_provider_intellitoggle.dart';

void main() async {
  final provider = IntelliToggleProvider(
    sdkKey: 'YOUR_INTELLITOGGLE_SDK_KEY',
  );

  await OpenFeatureAPI().setProvider(provider);

  final client = IntelliToggleClient(namespace: 'my-service');

  final enabled = await client.getBooleanValue(
    'new-dashboard-enabled',
    false,
    evaluationContext: {
      'targetingKey': 'user-123',
      'role': 'beta_tester',
    },
  );

  print('Feature enabled: $enabled');
}

πŸ§ͺ Local Development & Testing #

Use the included InMemoryProvider for fast testing without external dependencies:

final provider = InMemoryProvider();
provider.setFlag('experimental-mode', true);

await OpenFeatureAPI().setProvider(provider);

final client = IntelliToggleClient(namespace: 'test');
final enabled = await client.getBooleanValue('experimental-mode', false);
print('Flag = $enabled'); // true

βš™οΈ OREP Server (Optional) #

Start a remote flag evaluation API:

dart run bin/orep_server.dart

Configure using environment variables:

Variable Default
OREP_PORT 8080
OREP_HOST 0.0.0.0
OREP_AUTH_TOKEN changeme-token

πŸ“š Resources #


πŸ“ License #

MIT


---

Let me know if you'd like a `bin/orep_server.dart` usage snippet or an `example/main.dart` to pair with this for pub.dev’s [score metrics](https://dart.dev/tools/pub/score).
0
likes
150
points
81
downloads

Publisher

unverified uploader

Weekly Downloads

Official IntelliToggle provider for the OpenFeature Dart Server SDK.

Homepage
Repository (GitHub)
View/report issues
Contributing

Documentation

API reference

License

BSD-3-Clause (license)

Dependencies

http, meta, openfeature_dart_server_sdk

More

Packages that depend on openfeature_provider_intellitoggle