Feature Toggle: A Simple, Low-Code Tutorial (2023)

As you build a product and as it evolves over time with multiple features, it becomes critical that you build a robust and reliable system to launch new features. Especially considering feature activation and retention is key for any software product seeking growth: if a user activates a premium feature and continues to use it over time, they are more likely to pay for your product and generate on-going revenue for the company, for example. And one way to increase feature activation/retention is to have a feature toggle system.

In this article, we will see how you can building a feature toggle system in low-code using Rowy, lowcode platform and manage the feature flags on a collaborative spreadsheet UI.

What is Feature Flagging aka Feature Toggle?

Feature flagging is a feature for developers to enable or disable other features in their application with just the push of a toggle button, from an administration dashboard without having to change the code.

Use Cases

A feature toggle is a powerful tool to test new features, roll out new features to a specific set of users, or turn off features that aren't performing well, without having to push new code to perform the changes or publish a new software release. You can turn on/off features in your app without making any release or pushing a new update to iOS or Google Play store.

  • A/B testing or Experimental toggles - If you have a feature to release but are unsure if it'll perform well, you can A/B test it by toggling the feature on for a few users before making a final decision. They allow developers to experiment with different approaches and iterate quickly to find the best.
  • Planned releases - Instead of risking overwhelming users with too many new features, you can slowly roll them out by enabling them at a given date.
  • Emergency switches - Feature flagging can also be used for maintenance tasks or disable broken features. For example, if your website is under DDoS, you can temporarily limit access to your website by toggling off the feature that allows users to log in.
  • Kill Switches: Kill switches are used to turn off a feature entirely in the event of a critical bug or security issue. They allow developers to disable a feature quickly, without having to roll back the entire application.
  • Operational toggles - Feature flagging can also be used as an operational toggles for the purpose of driving events or operations-based changes. For example, operational toggles can be useful when an event goes live or when a sale completes or your want to highlight an announcement for a duration of time.
  • Permission toggles - Feature flagging can also be used as an permission toggles for the enabling or disabling a specific set of permissions for user groups - pro subscribers, users with a discount users etc.

Feature Flagging with Rowy

Rowy makes feature flagging trivial to add to your product.

1. Create a Rowy Table

Using a Rowy table, you can maintain the states of all your applications features using the Toggle Field type.

You can just list down your features like "Dark Mode" or "Chat Widget", then decide which ones will be enabled or not using the toggle buttons:

“rowy.io”

You can then invite product managers, designers, or anyone else who needs to manage the features to your Rowy table using a simple invite email.

2. Query The Feature Flags

Once you've created your feature flags, you can query them in your front-end application using the Firebase API: Rowy is a Firebase CMS, so your Rowy tables are automatically synced to Firebase collections.

For example, if you want to check if the "Dark Mode" feature is enabled, you can query the darkMode row in your features collection:

const isDarkModeEnabled = await firebase
  .firestore()
  .collection("features")
  .doc("darkMode")
  .get()
  .then((doc) => doc.data().public);

You can then use this information to enable or disable the feature in your application. You can also customize logic to handle more complex use cases, like A/B testing for a specific set of users.

3. Schedule Feature Releases

Rowy supports more than 30 types of fields, so you can combine them together to handle any workflow.

To schedule feature releases for example, you can pair the feature column and the switch button with a refresh button to publish new updates with a single click.

You can also select a date and time for your features to automatically go on or off line, and keep a log of the last update or categorize features for easier management:

“rowy.io”

Join Rowy On Discord

Rowy tables offer an intuitive and visual way to add feature flagging, whatever use case you can cook up! Take what you like from our demo library and add them to your own list of features!

If you have any questions, feel free to join our Discord community and ask away!

Get started with Rowy in minutes

Continue reading

Browse all