What problem does it solve?
Feature flags reduce deployment risk by letting RedisInsight roll out, hide, or experiment with functionality without shipping breaking changes to all users at once.
Core Features & Use Cases
- Define flag behavior in a remote config: Create or update flags in
features-config.json, including rollout percentage (perc), optional environment/build filters, and optional data payloads.
- Select and register strategies in the backend: Use
CommonFlagStrategy, WithDataFlagStrategy, or SwitchableFlagStrategy and register the flag in the feature-flag provider so the backend can serve it to the frontend.
- Gate the UI and default state: Add the flag to the frontend enums and ensure default feature state exists so UI gating works consistently.
- Promote and clean up flags safely: Move from
dev-<name> to regular flags (or delete fully rolled-out flags) by updating enums, records, strategy registration, and removing gating code.
Quick Start
Create a new dev flag by adding it to redisinsight/api/config/features-config.json as dev-<name>, then registering it in the backend known features and strategy, and finally adding it to the frontend FeatureFlags enum with default state { flag: false } in the features slice.