Manage Go Flags with Ease

Reduce risk, iterate quicker, and get more control with LaunchDarkly
Go feature flag management. Try it out free with a 30-day trial.

Try It Free
Feature flag lifecycle management
Feature flag lifecycle management
Manage feature flags across multiple dev environments with flag statuses, audit logging, and custom roles
Feature toggle user and performance feedback
Get feedback without a full release
Release to limited user segments, test your infrastructure, and get the feedback you need to iterate quickly
Feature flags kill switch and feature toggles
Kill bad features without redeploying
Reduce risk and unlock the power of continuous delivery

Go Feature Flags

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

1.Install the SDK with the go tool

Check out our open source Go SDK on GitHub or read through the reference documentation.

               
       go get github.com/launchdarkly/go-client
                
              

2.Create a new LaunchDarkly client

               
       ld_client := ld.MakeClient("YOUR_SDK_KEY", 5 * time.Second)
                
              

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

First, create a user.  You can pass us any data about users for targeting and segmentation. 
Then, call BoolVariation and see whether the flag is on for that user.

               
        key := "bob@example.com"
        first := "Bob"
        last := "Loblaw"
        custom := map[string]interface{}{"groups": "beta_testers"}

        user := ld.User{
          Key: &key,
          FirstName: &first,
          LastName:  &last,
          Custom:    &custom,
        }

        show_feature, _ := client.BoolVariation("one_click_checkout", user, false)

        if show_feature {
          // Showing One Click Checkout
          fmt.Println("Showing your feature to " + *user.Key)
        } else {
          // Not Showing One Click Checkout
          fmt.Println("Not showing your feature to " + *user.Key)
        }
                
              

5.Manage your flag

Use LaunchDarkly to determine which users see the feature.
You can roll out to a percentage of your users or target individual users/groups.

Testimonials
  • LaunchDarkly Testimonial
    I believe that feature flags are a critical piece of modern development, and LaunchDarkly brings this part of continuous delivery to the masses.
    - Rob Zuber, CTO, CircleCI
    LaunchDarkly Testimonial
    LaunchDarkly has been easy to on-board and integrate into our existing development cycle, which has helped us move faster with less risk.
    - Lawrence, VP Engineering, Ten-X

Try LaunchDarkly free for 30 days.

Continuously deliver and deploy software to your users in a faster, more reliable way. Get started today with a 30 day free trial.