FlipFlag

Features Flag

Создание и настройка Features Flag.

Feature Flags — это механизм управления функциональностью приложения и декларации возможностей, доступных в рантайме. В FlipFlag флаги не создаются вручную в интерфейсе — они объявляются разработчиками в коде и создаются автоматически, когда попадают в нужное окружение во время выполнения приложения.


Для чего используются Feature Flags

1. Декларация функциональности в рантайме

Feature Flags могут использоваться как способ декларации того, что определённая функциональность: присутствует в коде, доступна в рантайме, готова к тестированию в конкретном окружении.

Это особенно полезно для проверки доступности фич в разных окружениях, наблюдения за тем, какие возможности реально используются в коде, контроля жизненного цикла функциональности.

2. Управление включением и отключением функций

Классический сценарий использования feature flags — покрытие кода флагами для управления поведением приложения.

С помощью флагов можно:

  • включать и отключать функциональность без деплоя;
  • управлять релизами и экспериментами;
  • быстро отключать проблемные изменения;
  • выпускать код в main, не активируя его в production.

Как создають Feature Flags?

Вручную через UI

Любой флаг можно создать с через веб-интерфейс платформы, перейдя в раздел:

"Проекты" -> "Флаги" -> "Создать флаг".

Декларация флага в коде

В FlipFlag можно задекларировать и создать feature flags непосредственно в коде проекта при разработке. Это может быть как объявление новой функциональности, так и покрытие существующего кода флагом для управления поведением приложения.

После декларации флага в коде не требуется вручную создавать его в интерфейсе.

Когда приложение запускается в определённом окружении (runtime), FlipFlag:

  • автоматически обнаруживает объявленные в коде флаги;
  • создаёт соответствующие feature flags в проекте;
  • привязывает их к текущему окружению;
  • применяет преднастроенные правила и политики.

Таким образом, список feature flags в платформе всегда отражает реальное состояние флагов в рантайме, без необходимости ручной синхронизации между кодом и интерфейсом.

Ниже приведены примеры того, как объявлять feature flags в коде и использовать их для покрытия логики приложения.


⚠️ Важно!

Для декларации feature flags через код требуется использование приватного ключа (private_key) при настройке SDK.

Использование приватного ключа не рекомендуется в клиентских приложениях (browser, mobile), так как он предоставляет расширенные права и может привести к компрометации проекта.

Для клиентских приложений следует использовать публичные ключи и работать только с уже существующими feature flags, созданными и управляемыми на стороне сервера.


При первом появлении флага в рантайме:

  • платформа автоматически создаёт feature flag;
  • флаг привязывается к соответствующему проекту и окружению;
  • применяются преднастроенные правила (статус, поведение и политики).
  • запускаются автоматизации, которые слушают определенные события.

Таким образом, интерфейс всегда отражает реальное состояние флагов в коде, без ручной синхронизации.

Форма создания окружения

On this page