Feature Flags let you modify system behavior without changing code.
Your application can have many feature flags so you can decide which parts do you show or hide from end-users.
We use a special feature called TEMP, this feature is not managed by the product team, but it is managed by developers. TEMP is always enabled in development, staging, and production tenants that we use to test features before releasing to end-users.
Developers can develop and merge WIP work into the master behind TEMP flag, so we don’t need to review big pull requests (more on a fast pull request workflow here).
When the developer feels he/she is ready to ship the feature to production, he can remove the feature TEMP, and add a feature flag managed by the product team, or just release to everybody else.
Here is a 37 lines implementation of Feature Flag that you can use in your React app
https://gist.github.com/sibelius/f281f16a184a632a68bbb24ba15ded3c
Let me know if this helps your team move faster
This naive implementation might work for simple use cases. Sooner or later, you'll need to use more sophisticated rules or even user information to decide whether or not a feature should be enabled to a given user. Next, you'll need to make sure it's really benefiting your users (A/B tests), which will make you eventually realize that there's no one-size-fits-all, so each feature makes more sense (or only makes sense at all) for specific audiences.
Wherever you're on this journey, Croct can make your life way easier saving you tons of time and headache.
https://github.com/croct-tech/plug-react