Using Feature flags

Has anyone used a feature flag service like launch darkly to change the content that’s returned from a model?

1 Like

I’m also looking for a way to itegrate launch darkly with strapi. Any luck @jcteague ?

We haven’t moved forward yet. I did a little investigation and I think doing something like the international plugin would work. Basically creating an entirely new entry for the model per feature flag. I think trying to get more granular than that will be difficult.

@jcteague can you explain here or in a discord Strapi Community call what you want to use the feture flags for depending on your answer I mind know an other solutuion.

Since I think it is better to do the feture flags fully in strapi.

Main issue I see with launch darkly is that you would have to do some wired stuff to make it work with content-type changes. in the strapi backend or code changes to an endpoint.

yeah, we’re looking for a way to change the content delivered to the user, based on feature flags. For example, if you have a header field and you want to run an experiment with different values for the header field to see which one is effective.

So the only reason you want this is for A/B testing?

Main issue I see with strapi is how do you get the statistics?

Like doing this is as easy as doing a findmany on like slug and having a A and a B variation. that you select internally or externally.

So you would need a way for your frontend to know what experiment it is doing and how to get the data from that.

We need the variant to be selected from the backend. We want to conduct the experiment without making changes to the client (mobile, web extension).

Issue is you can only track redirects that load other strapi stuff. so I am not sure how useful that would be for A/B testing. unless you make a custom solution that hit a endpoint with spesific front end information.

I think it will be interesting to have a conversation with you in the strapi vc about this. not a strapi employ but I am a strapi contributor. Strapi Community

Issue is you can only track redirects that load other strapi stuff

I’m not quite sure what that means.

My initial thoughts were having different variants of the model based on the flag. We have a backend service that can tell us which feature flags are on per user. Choose the correct model based on the feature flag.

Isn’t this similar to how the international plugin works? You’ve got a variant and your using the locale information to choose the variant? I’ve looked at it a little, but not fluent enough in the strapi abstractions to be sure I’m right.

Yes, my head is 2 steps forward.

now you have the A/B test and how do you now know if A or B is better.

You would need to do someting special in the frontend to get that data you need exept if it was for example. redirects to an other page.

Our feature-flag service does that. We track flag usage in our analytics.

So the only thing you are checking is lets say you give 50% A and 50% B which one gets after 1 weeks to most usage?

More or less, whatever we’re measuring, usually click events.

There are other use cases as well, but we need to know if this basic one can be done with Strapi.

Yes the A/B switching is perfectly doable. then if you would for example tell trough strapi to your frontend what event to hit when the button is clicked with A or with B. should also be doable. still some 1 time frontend changes would be needed. so you could do this fully internally with strapi. or with a 3rd party tool but then strapi needs to be told if they are in A or in B