Package selection guidance compiled from public package information, community data, and project usage.
The official Flutter client-side SDK for LaunchDarkly enables dynamic feature management in Flutter applications. It allows developers to toggle features on or off, run A/B tests, and deliver personalized experiences without releasing new code. The SDK supports multiple platforms including Android, iOS, macOS, Windows, and Linux, ensuring consistent behavior across environments. With real-time updates and robust fallback mechanisms, it integrates seamlessly into existing Flutter workflows.
Use cases
Feature flagging in mobile apps
A/B testing user experiences
Gradual feature rollouts
Personalized content delivery
Remote configuration management
Key features
Real-time feature updates
Cross-platform support
Offline mode with fallbacks
Secure client-side evaluation
Integration with LaunchDarkly dashboard
Suitable for
Mobile app developers using Flutter
Teams practicing continuous delivery
Product managers needing feature experimentation
Engineering teams managing complex feature releases
Considerations
Requires a LaunchDarkly account
Network connectivity needed for live flags
Potential latency from remote evaluations
Additional dependency size
Need to manage feature flag lifecycle
Original README
Original README snapshot from the linked source repository. Visit the repository for the latest content.
LaunchDarkly Client-side SDK for Flutter
LaunchDarkly overview
LaunchDarkly is a feature management platform that serves trillions of feature flags daily to help teams build better software, faster. Get started using LaunchDarkly today!
Supported Platforms
See the pubspec.yaml file for Flutter version requirements.
This SDK supports Android, iOS, Linux, macOS, Web, and Windows.
The underlying API support requirements are determined by the native plugins used by the SDK.
These include:
shared_preferences: Used for persistent caching for flag payloads and other data.
Package which contains common code for dart based SDKs. Currently there is only a client-side SDK, but this directory should only contain code tha would apply to both client and server-side SDKs.
We run integration tests for all our SDKs using a centralized test harness. This approach gives us the ability to test for consistency across SDKs. These tests cover each method in the SDK, and verify that event sending, flag evaluation, stream reconnection, and other aspects of the SDK all behave correctly.
Contributing
We encourage pull requests and other contributions from the community. Read our contributing guidelines for instructions on how to contribute to this SDK.
About LaunchDarkly
LaunchDarkly is a feature management platform. We empower all teams to deliver and control their software. With LaunchDarkly, you can:
Roll out a new feature to a subset of your end users, such as a group of end users who opt in to a beta tester group, and gather feedback and bug reports from real-world use cases.
Gradually roll out a feature to an increasing percentage of customers, and track the effect that the feature has on key metrics. For instance, how likely is a customer to complete a purchase if they have feature A versus feature B?
Turn off a feature that is causing performance problems in production, without needing to re-deploy or even restart the application with a changed configuration file.
Grant access to certain features based on end user attributes, like payment plan. (For example, customers on the ‘gold’ plan have access to more features than customers in the ‘silver’ plan).
Disable parts of your application to facilitate maintenance, without taking everything offline.
LaunchDarkly provides feature flag SDKs for a wide variety of languages and technologies. Read our SDK documentation for a complete list.