TL;DR

  1. Set your feature flags on the ConfigCat Dashboard.
  2. Your feature flags get distributed across the ConfigCat CDN.
  3. The ConfigCat SDK in your application downloads and evaluates the feature flag values.
  4. Your application logic uses the served feature flag value and acts accordingly.

How does the feature flag evaluation work?

The feature flag evaluation happens completely on the client side.

  1. The ConfigCat SDK frequently downloads the feature flag values from the CDN in the form of a standard config.json file.
  2. The SDK caches the feature flag values locally.
  3. Your application code requests a feature flag value for given user. This is the getValue()call.
  4. The SDK evaluates the request locally and serves the feature flag value without uploading any user information.
  5. The evaluation logic is consistent across all platforms and SDKs. The same user will always get the same result everywhere.

Main Components

Architecture diagram of ConfigCat

Dashboard

A graphical user interface suitable for even non-technical people to manage feature flags and teams easily. Try here.

Screenshot of the ConfigCat Dashboard

CDN

Serves our customers' config.json files. They are designed to scale quickly and to handle a massive number of requests. Read more about geographic locations and Cloudflare's global network here.

GDPR consideration: With the Data Governance feature you can have your data stored only on servers within the EU.

ConfigCat SDKs

The SDK is responsible for downloading and caching the config.json files. It also provides an interface to access feature flag values from any Desktop, Mobile, Frontend, or Backend application code. All SDKs are open source on GitHub.

Requests & config.json downloads

A config.json download is counted every time your application downloads a configuration file from the ConfigCat CDN. The frequency of these downloads is totally under your control. Between downloads, you can access your feature flags as many times as you like, it still counts as one config.json download.
Learn more on how to forecast the number of downloads.

You can monitor the amount of your config.json downloads in real-time on the ConfigCat Dashboard.

ConfigCat real time config.json download statistics.

Public Management API

A publicly available API to provide management access to feature flags programmatically. See the API Docs on api.configcat.com

Cat with a chat cloud