GO Feature Flag logo

GO Feature Flag

Lightweight, multi-language feature flag service with relay proxy

A simple, complete, self-hosted feature flag solution that supports Go, OpenFeature SDKs, and multiple storage backends, offering complex rollouts, notifications, and data export via a relay proxy.

GO Feature Flag banner

Overview

Overview

GO Feature Flag is a lightweight, self‑hosted feature flag system designed for easy integration across polyglot environments. It can run as a Go module for in‑process evaluation or as a central relay proxy that exposes an API compatible with OpenFeature SDKs, enabling usage from languages such as Node.js, Java, and more.

Capabilities & Deployment

Flags are defined in JSON, TOML, or YAML files and can be sourced from HTTP, S3, Kubernetes, or other supported locations. The platform supports complex rollout strategies—including percentage splits, A/B testing, scheduled activations, and progressive rollouts. Exporters send usage data to destinations like S3, Google Cloud Storage, or local files, while notifiers (webhook, Slack) alert teams to flag changes. Deployment is straightforward via Docker or binary execution, with the relay proxy listening on a configurable port.

Who Benefits

Teams that need a flexible, code‑first flag management solution without a hosted SaaS UI will find GO Feature Flag ideal, especially when adopting the OpenFeature standard across multiple services.

Highlights

Supports multiple flag storage backends (HTTP, S3, Kubernetes, etc.)
Configuration in JSON, TOML, or YAML formats
Complex rollout strategies: percentage, A/B testing, scheduling
Exporters and notifiers for data sinks and change alerts

Pros

  • Lightweight and easy to deploy
  • Multi-language support via OpenFeature SDKs
  • Flexible storage and configuration formats
  • Built-in exporters and notification integrations

Considerations

  • Cross-language usage requires running a separate relay proxy
  • Feature set may be less extensive than commercial SaaS offerings
  • No native visual UI; flags are managed via configuration files
  • Complex rule definitions require careful setup

Managed products teams compare with

When teams consider GO Feature Flag, 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

  • Teams building Go services that need in-process flag evaluation
  • Organizations adopting the OpenFeature standard across polyglot stacks
  • Projects preferring self-hosted, file‑based configuration management
  • Use cases requiring custom rollout schedules or A/B testing

Not ideal when

  • Companies seeking a hosted SaaS dashboard with visual flag editing
  • Small projects without need for complex rollout logic
  • Environments where a UI‑driven admin console is mandatory
  • Teams unable to run or maintain a relay proxy container

How teams use it

Gradual rollout of a new API endpoint

20% of users receive the new endpoint, allowing safe validation before full release

A/B test UI redesign across web and mobile

Collect variation metrics via exporters to evaluate impact on user engagement

Feature gating for admin‑only functionality

Only users with the admin flag true can access the new admin panel

Scheduled feature activation for holiday promotion

Feature automatically enables on specified dates without code changes

Tech snapshot

Go78%
JavaScript9%
Kotlin5%
Python3%
CSS2%
Java1%

Tags

continuous-deploymenthelp-wantedfeature-togglecontinuous-testinggofeature-togglesexperimentationfeature-flagdevopsbeginner-friendlyvariantsfeature-togglinggolangtogglesgolang-librarycontinuous-deliverygo-feature-flagfeature-flagsexperiments

Frequently asked questions

Do I need to use the relay proxy?

Use the relay proxy for multi-language support and central flag management; Go-only projects can use the Go module directly.

Which programming languages are supported?

Any language with an OpenFeature SDK, such as Go, Node.js, Java, .NET, and more.

How are flags stored?

Flags can be stored in JSON, TOML, or YAML files and retrieved from local files, HTTP endpoints, S3, Kubernetes ConfigMaps, etc.

Can I receive notifications when a flag changes?

Yes, GO Feature Flag can send change notifications via webhook or Slack integrations.

Is there a built-in UI for managing flags?

Flag definitions are managed through configuration files; there is no native UI, but you can build one or integrate external tools.

Project at a glance

Active
Stars
1,907
Watchers
1,907
Forks
193
LicenseMIT
Repo age5 years old
Last commit2 days ago
Self-hostingSupported
Primary languageGo

Last synced 2 days ago