Skip to main content

Replane Documentation

Replane is a dynamic configuration platform that lets you change application settings in realtime without deploying code. Use it for feature flags, operational tuning, A/B testing, and cross-service configuration.

Get started

What you can build

Use caseDescription
Feature flagsToggle features on or off without deploying code
Gradual rolloutsRoll out features to a percentage of users
A/B testingServe different values to different user segments
Operational tuningAdjust rate limits, timeouts, and batch sizes in realtime
Kill switchesInstantly disable features during incidents
Cross-service configShare settings across multiple services

How it works

                                ╭───────────────╮
│ PostgreSQL │
╰───────┬───────╯

┌─────────────────────────┼─────────────────────────┐
│ │ │
▼ ▼ ▼
╭─────────────────╮ ╭─────────────────╮ ╭─────────────────╮
│ Replane │ │ Replane │ │ Replane │
│ US East │ │ EU West │ │ AP South │
│ ············· │ │ ············· │ │ ············· │
│ config cache │ │ config cache │ │ config cache │
╰────────┬────────╯ ╰────────┬────────╯ ╰────────┬────────╯
│ │ │
│ SSE │ SSE │ SSE
▼ ▼ ▼
╭─────────────────╮ ╭─────────────────╮ ╭─────────────────╮
│ Your App │ │ Your App │ │ Your App │
│ ············· │ │ ············· │ │ ············· │
│ local cache │ │ local cache │ │ local cache │
╰─────────────────╯ ╰─────────────────╯ ╰─────────────────╯
  1. Create configs in the Replane dashboard — changes are stored in PostgreSQL
  2. Edge servers pull and cache configs locally for fast reads
  3. SDKs connect to the nearest edge and cache configs in memory
  4. Reads are instantreplane.get() returns from local cache, no network call
  5. Updates stream in realtime via SSE, keeping all caches in sync

High availability — Each Replane node operates independently with its own cache. As long as at least one node is running, your clients will receive configs. If a node goes down, SDKs automatically reconnect to another.

Replane Cloud

Replane Cloud runs edge servers in multiple regions worldwide. Your SDK automatically connects to the nearest one for sub-50ms initial load, then all reads are instant from local cache.

Key features

  • Realtime updates — Changes propagate instantly via SSE, no polling required
  • Override rules — Return different values based on user ID, plan, region, or any context property
  • Version history — Every change creates an immutable snapshot with full audit trail
  • Instant rollback — Revert to any previous version with one click
  • JSON Schema validation — Prevent invalid configurations before they're saved
  • Type-safe SDK — Full TypeScript support with automatic type inference
  • Cloud or self-hosted — Use our managed cloud or run on your own infrastructure

Example

import { Replane } from '@replanejs/sdk';

const replane = new Replane();
await replane.connect({
sdkKey: process.env.REPLANE_SDK_KEY!,
baseUrl: 'https://cloud.replane.dev', // or your self-hosted URL
});

// Get a feature flag
const showNewUI = replane.get('new-ui-enabled');

// Get a value with user context for override evaluation
const rateLimit = replane.get('api-rate-limit', {
context: { userId: user.id, plan: user.plan }
});

// Subscribe to realtime updates
replane.subscribe('new-ui-enabled', (config) => {
console.log('Feature flag changed:', config.value);
});

Next steps