Feature flags, A/B testing, and experimentation for engineering teams.
SignaKit is a developer-first experimentation platform. Flags are evaluated locally inside your application — no network call on the hot path, ~0.2ms evaluation, deterministic bucketing via MurmurHash3. A/B testing, multi-armed bandit optimization, and custom event analytics are included on every plan, including Free.
→ signakit.com · Docs · Pricing
All SDKs are open source in SignaKit/signakit under /packages.
| Package | Runtime | Install |
|---|---|---|
| @signakit/flags-node | Node.js | npm i @signakit/flags-node |
| @signakit/flags-react | React | npm i @signakit/flags-react |
| @signakit/flags-react-native | React Native | npm i @signakit/flags-react-native |
| @signakit/flags-browser | Browser / Vanilla JS | npm i @signakit/flags-browser |
| signakit/flags-php | PHP | composer require signakit/flags-php |
| signakit/flags-laravel | Laravel | composer require signakit/flags-laravel |
| signakit_flags | Flutter / Dart | flutter pub add signakit_flags |
| signakit-flags | Python | pip install signakit-flags |
| flags-java | Java | com.signakit:flags-java:1.1.0 |
| flags-swift | Swift / iOS | SPM: https://github.com/SignaKit/flags-swift |
| flags-golang | Go | go get github.com/SignaKit/flags-golang |
import { SignaKit } from '@signakit/flags-node'
const sk = new SignaKit({ apiKey: process.env.SIGNAKIT_API_KEY })
await sk.init()
const ctx = sk.context({ userId: 'user_123', plan: 'pro' })
const { variationKey } = ctx.decide('exp_checkout_redesign') ?? { variationKey: 'control' }
// variationKey is 'control' or 'treatment'
// Evaluated locally in ~0.2ms — no network call- 1M events / month
- Feature flags + A/B testing + multi-armed bandit
- 3 team members · 1 project
- No credit card required