JavaScript Feature Flags

Feature flag / toggle management built for JavaScript and single page apps

Feature flags are a software development best practice of gating functionality. Functionality can be deployed “off”, then turned on via the feature flag, separate from deployment. With feature flags, you can manage the entire lifecycle of a feature.

LaunchDarkly's JavaScript SDK lets you create and maintain JavaScript feature flags across your entire application. You can centrally manage all of your feature flags, perform granular rollouts, and kill bad features without redeploying. All flag values are evaluated in-memory, so there is no latency for your users. New flag settings are streamed to the SDKs in real-time, so any changes to your flag rules will take effect almost immediately.

LaunchDarkly Dashboard & Feature Flag Manager
Click Image to Enlarge

Here are some product benefits of LaunchDarkly's JavaScript Feature Flag SDK:

  • Real-time feature flags via a streaming API
  • In-memory flag evaluation with near zero latency
  • No external HTTP calls for flag values
  • Boolean & multivariate feature flags
  • Custom percentage rollouts and targeting rules
  • A/B testing
Click Image to Enlarge

Flag management benefits:

  • Audit log
  • Custom roles
  • Custom webhooks
  • Integrations for Slack and HipChat

JavaScript Feature Flags

Let's create a JavaScript feature flag for a "One Click Checkout"

1.Add the SDK snippet to your site pages.

Check out the reference documentation.

               
       <head>
          <script src="https://app.launchdarkly.com/snippet/ldclient.min.js"></script>
       </head>
                
              

2.Set the user context for the page.

First, create a user.  You can pass us any data about users for targeting and segmentation.

               
            var user = {
              "key": "aa0ceb",
              "firstName": "Ernestina",
              "lastName": "Evans",
              "email": "ernestina@example.com",
              "custom": {
                "groups": ["Google", "Microsoft"]
              }
            };
            var ldclient = LDClient.initialize('YOUR_CLIENT_SIDE_ID_HERE', user);
                
              

3.Create a feature flag in LaunchDarkly

A flag allows you to manage a feature from the LaunchDarkly dashboard.

4.Wrap your code with a feature flag

Call variation and see whether the flag is on for that user.

               
            var showFeature = ldclient.variation("one_click_checkout", false);
            if (showFeature) {
              // Show "One Click Checkout" feature
            } else {
              // the code to run if the feature is off
            }
                
              

5.Manage your flag

Use LaunchDarkly to determine which users see the feature.


Create your own JavaScript feature flags in minutes.
How It Works