explaingit

flipt-io/flipt

4,794GoAudience · ops devopsComplexity · 3/5Setup · easy

TLDR

A self-hosted feature flag system that runs inside your own infrastructure with no external service needed, giving teams a web dashboard to manage flags, gradual rollouts, and instant kill switches for production safety.

Mindmap

mindmap
  root((flipt))
    What it does
      Feature flag management
      Gradual rollouts
      Emergency kill switches
    Storage Options
      SQLite and Postgres
      MySQL and others
      Git GitOps mode
    APIs
      REST API
      gRPC API
    Integrations
      Prometheus metrics
      OpenTelemetry tracing
      OAuth and JWT auth
    Deployment
      Single binary
      DigitalOcean and Render
      Docker and Kubernetes
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Roll out a new feature to 5% of users first, then gradually increase the percentage without deploying new code.

USE CASE 2

Create an emergency kill switch to instantly disable a broken feature in production from a web dashboard.

USE CASE 3

Manage feature flag configuration in a Git repo so changes go through pull requests and code review like any other code change.

USE CASE 4

Target a specific user segment with a new feature while keeping it hidden from everyone else.

Tech stack

GoSQLitePostgreSQLMySQLgRPCREST APIPrometheusOpenTelemetry

Getting it running

Difficulty · easy Time to first run · 5min

Runs as a single binary with no required external dependencies, SQLite is used by default so no database setup is needed.

No license information is mentioned in the explanation.

In plain English

Flipt is a feature flag system you run inside your own infrastructure. Feature flags are on/off switches, or more complex targeting rules, that let a software team release code to servers without immediately showing a new feature to users. The team can then turn the feature on for a small group first, test it, and roll it out gradually, all without shipping new code each time. Flipt gives teams that control without sending any data to an outside service. The server runs as a single binary with no required external dependencies, which means installation is a one-command process. It ships with a web dashboard where you can create flags, define user segments for targeted rollouts, and set up emergency kill switches to instantly disable a feature if something goes wrong in production. The dashboard supports dark mode and includes a debug console for testing flag rules against specific user inputs before going live. Flipt stores flag configuration in a database of your choice, including SQLite, Postgres, MySQL, and others, or in Git repositories and other declarative storage backends. The Git-native storage option lets teams manage flag configuration the same way they manage code, with pull requests, code review, and version history. This approach, sometimes called GitOps, means flag changes go through the same approval workflow as any other change. The system exposes both a REST API and a gRPC API, so it works with most programming languages and existing tooling. It also integrates with Prometheus and OpenTelemetry for monitoring. Authentication options include API tokens, OAuth, JWT, and Kubernetes service tokens. One-click deployment options are available for DigitalOcean, Render, and Railway for teams that want a fast start. The full README is longer than what was shown.

Copy-paste prompts

Prompt 1
How do I install Flipt as a single binary and create my first feature flag to hide a new feature from users?
Prompt 2
Show me how to configure a gradual rollout in Flipt so only 10% of users see a new feature at launch, then increase it over time.
Prompt 3
How do I store Flipt flag definitions in a Git repository so my team can review and approve flag changes in pull requests?
Prompt 4
I want to check a Flipt feature flag from my Go service using the gRPC API, show me how to query it and handle the on/off result.
Prompt 5
How do I set up Prometheus monitoring for Flipt to track how often each feature flag is evaluated?
Open on GitHub → Explain another repo

← flipt-io on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.