Skip to content

OpenFeature

OpenFeature gives app code a common way to ask for a feature flag value. A separate provider supplies the answer.

Read official information

What does OpenFeature do when your app asks if a feature is on?

The app asks a standard question and supplies a default. A provider, which is the connection to a flag system or another source of values, decides what answer to return. With no provider, OpenFeature returns the supplied default.

A dashboard, live targeting rules and stored flag history come from whatever system supplies those answers. OpenFeature gives the app a consistent way to request one.

How do you try it before connecting a flag service?

Write down what the app should display for an on value, an off value and a missing answer. You can later try the same cases with the Node.js SDK’s in-memory provider, which can keep test values in the running program.

If you run this in code, use a disposable local program with only test values and no connection to your normal flag service or analytics. The paper table is enough to decide what the app should do first.

A test for a new help panel
CaseExpected screen
The test provider returns onThe new panel.
The test provider returns offThe original panel.
No provider is configured and the app default is offThe original panel.

What still needs checking when you switch providers?

A common call can help you keep the same checks in the app. Each provider can still make different decisions using the same identity, rule or percentage.

Save the flag keys, defaults and the rules behind them. Try the same fictional user or workspace in both test configurations and compare the answers. Decide which differences are acceptable before moving real users. Historical flags and results depend on what the old provider can export.

Where do experiments and costs fit?

OpenFeature defines tracking interfaces that a compatible provider or integration can use. To compare versions, you still need a system that records assignments and outcomes and lets you analyze them.

The standard and its open-source SDKs have no service subscription. A connected flag or analytics service may charge. A component you host yourself still needs infrastructure and maintenance.