Skip to content

featbit/featbit

Repository files navigation

image


Try FeatBit Online

Try FeatBit immediately with our online demo. The video below shows you how to get started quickly.

5.29.4.mp4

About FeatBit

FeatBit is an open-source feature flags management tool that empowers developers:

Ship Code Safely. Mitigate risks with Production Testing, roll out features to 1% of users initially then expanding progressively, and ensure instant error recovery without redeployment.

Targeted Experiences. Giving you control over who sees each feature and when they see it. Release features to specific target users, and continuously measure and improve your business.

Innovate Faster. Decouples code deployments from feature releases. Deploy at will, and release any feature immediately upon request from the boss.

Host Anywhere. FeatBit allows you to host your feature flags service wherever your business needs it, ensuring compliance and data protection.

Born for developers. Use simple if/else statements to control and release features, eliminating complex DevOps tasks. This enables developers to directly drive business value.

Get started in 3 steps

1. Start FeatBit

To self-host FeatBit with Docker, Run this script:

git clone https://github.com/featbit/featbit
cd featbit
docker compose up -d

Once all containers have started, you can access FeatBit's portal at http://localhost:8081 and log in with the default credentials:

Note By default, FeatBit's portal is only accessible from the local machine where Docker Compose is running. If you want to make it publicly accessible, refer to the FAQ for instructions.

2. Connect an SDK

Find your preferred SDK in our list of official SDKs and import it into your project. Follow the setup guides for your specific SDK.

You can also learn how to connect an SDK in the "Getting Started" section after logging in to the Portal for the first time.

image

3. Check a feature flag

To check the state of a feature flag in your code, you just need a simple function call to verify the expected value. Here's how it might look in C#:

var user = FbUser.Builder("tester-id").Name("tester").Build();
if (featbit.BoolVariation("user-new-algorithm", user, defaultValue: false))
{
    // run new algorithm
}
else
{
    // run old algorithm
}

🙏 If you are using FeatBit, we have launched the FeatBit Usage Survey. It would be greatly appreciated and incredibly helpful if you could take the time to fill it out (5 questions).


Configure and run FeatBit anywhere

The above sections show you how to get up and running quickly and easily. When you're ready to start configuring and customizing FeatBit for your own environment, check out the Installation Documentation, K8s Manifest Files and FeatBit Agent Documentation for getting started with self-managed deployments, FeatBit configuration options, or running FeatBit locally via docker.

Documentation & Community

Official Documentation

Join our Online Slack Support & Community

Connect with FeatBit on LinkedIn

Email us at [email protected] if Slack isn't your thing.

Official Website

Features

FeatBit offers a range of features including:

featbit-readme-new-2

Contribute

Building FeatBit is a collaborative effort, and we owe much gratitude to many intelligent and talented individuals.

Join Slack to get your assignment.

Contributors

We would like to express our gratitude to all the individuals who have already contributed to FeatBit!

Made with contrib.rocks.

License

FeatBit is an Open Core product. The bulk of the code is under permissive MIT license. See the LICENSE file for details.

The following listed features are protected by a commercial license key, please contact us by Slack or Email to get a license key or a trial license key:

  • Schedule
  • Change request
  • SSO
  • Multi-organizations