0.0.3 • Published 3 years ago

simple-feature-flag v0.0.3

Weekly downloads
-
License
ISC
Repository
-
Last release
3 years ago

Simple Feature Flag

A feature flag (also called feature toggle) makes it easier to enable or disable feature/functionality. This package will help you to implement such feature flag/toggle across your application in a easy way.

Installation

You can install the package via npm:

npm install simple-feature-flag

Usage

For every flag you create there must be at least one filter associated. Filters are classes which contains business logic. For example: IsEnabled() and IsDisabled() are two in-build filters which can be added while creating a flag. You can also create your custom filters for any customized logic.

Example

Create a file called feature-flag.ts

First step is to create flags for the feature we want to toggle. For this we're using FlagBuilder.

const oktoberfestFlag = new FlagBuilder('oktober-fest')
  .addFilters('live', new IsDisabled())
  .addFilters('staging', new IsEnabled())
  .build();

As you can see oktober-fest feature is set to be disabled in live and enabled for staging environment.

Now you just need to add created flag using FeatureFlagBuilder.

const featureFlag = new FeatureFlagBuilder()
  .setEnvironment('staging')
  .addFlag(oktoberfestFlag)
  .build();

Just use featureFlag instance in you application to check if given feature is enabled or not for specified environment.

if (featureFlag.isEnabled('oktober-fest')) {
  // code when feature is enabled
}

Testing

npm run test

Credits