Flipswitch

Introduction

Enterprise-grade feature flag management with OpenFeature support

Welcome to Flipswitch

Flipswitch is an enterprise-grade feature flag management system built in Scala 3 with a modern React dashboard. It provides real-time flag updates, flexible targeting, and full OpenFeature compatibility.

Why Flipswitch?

  • OpenFeature Native - Full OFREP compliance, works with any OpenFeature SDK
  • Real-time Updates - Server-Sent Events for live flag changes
  • Flexible Authentication - Password-based, OIDC (Keycloak), or dual mode
  • Fine-grained RBAC - Group-based permissions with inheritance at org/project/environment levels
  • Rich Targeting - Segments, percentage rollouts, regex matching, and more
  • Self-hostable - Run on your own infrastructure with full control

How It Works

  1. Create a flag in the Flipswitch dashboard with variants and targeting rules
  2. Generate an API key for your environment (development, staging, production)
  3. Install an SDK in your application using OpenFeature
  4. Evaluate flags with context (user ID, email, custom attributes)
  5. See real-time updates when you toggle flags in the dashboard
Example: React Integration
import { FlipswitchProvider } from '@flipswitch/sdk';
import { OpenFeature, useFlag } from '@openfeature/react-sdk';
 
// Initialize once at app startup
const provider = new FlipswitchProvider({
  apiKey: 'YOUR_API_KEY'
});
await OpenFeature.setProviderAndWait(provider);
 
// Use in components
function MyComponent() {
  const { value: darkMode } = useFlag('dark-mode', false);
  return <div className={darkMode ? 'dark' : 'light'}>...</div>;
}

Architecture

Flipswitch consists of:

  • Admin Server - REST API for managing flags, projects, and permissions
  • Flag API - OFREP-compliant endpoint for flag evaluation
  • SSE Server - Real-time event stream for flag changes
  • React Dashboard - Modern UI for flag management
  • SDKs - JavaScript and Java SDKs with SSE support

On this page