Skip to content

Feature Flags

Dylan edited this page Jan 26, 2023 · 48 revisions

About

Feature flags is a software tool that enables a product team to enable or disable (aka show or hide) specific product features on-demand without the need for code modifications or new pull requests.


History

Initially Learning Resources considered integrating a third-party feature flag solution called nuxt-feature-toggle. This solution was easy to integrate and use, however it lacked the capability to pass more customized options to flagged components. This limitation along with the other future extensibility considerations led Learning Resources to implement an in-house solution that replicates the intuitive integration / usability of the nuxt-feature-toggle but with room for future extensibility and customization.


For Users

Who are the users?

  • Product/project managers
  • Developers
  • Other project administrators



How to toggle a feature?

STEP 1: Login to AWS Amplify


STEP 2: Select the environment

  • Select LearningResource-Production or LearningResources-Staging depending on which environment you which to toggle a feature for.
  • Then click Management console within AWSAdministratorAccess

STEP 3: Go to Amplify

  • Click Amplify (located near top left of window)

STEP 4: Select the App

  • Think of the app as the domain you want to toggle a feature for

STEP 5: Manage Environment Variables

  • Click Environment variables (located in left menu)
  • Then, click Manage variables button (located top right)
       Screenshot 2023-01-26 at 10 42 06 AM

STEP 6: Toggle Feature

  • Find the feature you want to toggle. Features follow the naming convention of 'F_[FEATURE_NAME]'
  • Type in the value input to toggle the feature on or off.      - true | 1 | {"isEnabled":true} will turn the feature on
         - false | 0 | {"isEnabled":false} will turn the feature off\

For Developers

How to create a new feature flag?

Clone this wiki locally