React client for feature flag management and evaluation
npm install @leancodepl/feature-flags-react-clientReact hooks for type-safe feature flag management using OpenFeature.
``bash`
npm install @leancodepl/feature-flags-react-clientor
yarn add @leancodepl/feature-flags-react-client
Creates React hooks for type-safe feature flag management using OpenFeature.
Parameters:
- flags: TFlags - Feature flags configuration object with default valuesprovider: Provider
- - OpenFeature provider instance
Returns: Object containing useFeatureFlag hook and FeatureFlagsProvider component
`typescript
//featureFlags.ts
import { mkFeatureFlags } from "@leancodepl/feature-flags-react-client"
import { ConfigCatWebProvider } from "@openfeature/config-cat-web-provider"
const flags = {
enableNewFeature: { defaultValue: false },
maxRetries: { defaultValue: 3 },
}
const provider = ConfigCatWebProvider.create("sdk-key")
export const { FeatureFlagsProvider, useFeatureFlag } = mkFeatureFlags(flags, provider)
`
`typescript
import React from 'react';
import { FeatureFlagsProvider, useFeatureFlag } from './featureFlags';
function App() {
return (
);
}
function Dashboard() {
const { value: isEnabled } = useFeatureFlag('enableNewFeature');
const { value: retries } = useFeatureFlag('maxRetries');
return (
$3
`typescript
import React from 'react';
import { useFeatureFlag } from './featureFlags';function Settings() {
const { value: retries } = useFeatureFlag('maxRetries', 5);
return
Retries: {retries};
}
``