Flagr logo

Flagr

Deliver targeted experiences with feature flags and A/B testing

Flagr is a Go microservice that enables feature flagging, A/B experiments, and dynamic configuration via clear Swagger APIs, with a UI, Docker deployment, and client libraries for multiple languages.

Flagr banner

Overview

Overview

Flagr is a lightweight Go microservice that centralizes feature flag management, A/B experimentation, and dynamic configuration. It exposes a fully documented Swagger REST API, allowing developers to create, update, and evaluate flags programmatically. The built-in UI provides a quick visual interface for flag administration, while client libraries for Go, JavaScript, Python, and Ruby simplify integration across services.

Deployment

The service can be launched instantly with the official Docker image (ghcr.io/openflagr/flagr) and accessed on port 18000, or tried via the public demo at try-flagr.onrender.com. Its evaluation engine has been benchmarked at sub-millisecond latency under high request rates, making it suitable for real-time decision making in production environments. Because Flagr is self-hosted, teams retain full control over data, scaling, and customization, while the Apache 2.0 license ensures freedom to modify and redistribute the code.

Highlights

Feature flag management with real-time evaluation
Built-in A/B testing and experiment tracking
Dynamic configuration via Swagger REST API
Docker-ready image with web UI

Pros

  • Lightweight Go implementation scales easily
  • Clear API contract via Swagger
  • Supports multiple client SDKs
  • Performance‑tested low latency evaluation

Considerations

  • Requires self-hosting and operational overhead
  • UI is basic compared to commercial platforms
  • Limited built-in analytics beyond success ratio
  • No native cloud-managed offering

Managed products teams compare with

When teams consider Flagr, these hosted platforms usually appear on the same shortlist.

Hypertune logo

Hypertune

Type-safe feature flags platform with A/B testing, analytics, and app configuration optimized for TypeScript

LaunchDarkly logo

LaunchDarkly

Feature flag management platform for safe software releases with targeting, experimentation, and rollback capabilities

Reflag logo

Reflag

Feature flags and A/B testing for TypeScript

Looking for a hosted option? These are the services engineering teams benchmark against before choosing open source.

Fit guide

Great for

  • Engineering teams needing in-house feature flag control
  • Startups that prefer a free, self-hosted solution
  • Organizations with Go expertise and Docker workflow
  • Products that require fast flag evaluation at scale

Not ideal when

  • Companies seeking fully managed SaaS flag service
  • Teams without capacity to maintain infrastructure
  • Projects requiring deep analytics dashboards out of the box
  • Non-technical stakeholders needing low-code UI

How teams use it

Gradual rollout of new UI component

Enable the component for a subset of users, measure conversion, and roll back instantly if needed.

A/B test pricing strategies

Serve different price points to user segments, collect experiment results via API, and decide optimal pricing.

Dynamic configuration of feature toggles per region

Adjust behavior based on entityContext (e.g., state) without redeploying code.

Feature gating for beta testers

Expose experimental features only to identified beta users while keeping them hidden from the general audience.

Tech snapshot

Go75%
Vue19%
Shell4%
Makefile1%
JavaScript1%
Dockerfile1%

Tags

swaggerfeature-togglesdynamic-configurationab-testinggolangfeature-flags

Frequently asked questions

What languages are supported for client integration?

Official client libraries exist for Go (`goflagr`), JavaScript (`jsflagr`), Python (`pyflagr`), and Ruby (`rbflagr`).

What performance can I expect?

Benchmarks with vegeta show average latency around 370 µs at 2 k requests per second, with 100 % success rate.

Under which license is Flagr released?

Flagr is released under the Apache 2.0 license.

Project at a glance

Active
Stars
2,566
Watchers
2,566
Forks
197
LicenseApache-2.0
Repo age8 years old
Last commit6 days ago
Self-hostingSupported
Primary languageGo

Last synced 2 days ago