Miscellaneous
An enterprise-ready, GitOps enabled, CloudNative, feature management solution
Flipt enables you to follow DevOps best practices and separate releases from deployments. Built with high-performance engineering organizations in mind.
Flipt can be deployed within your existing infrastructure so that you don't have to worry about your information being sent to a third party or the latency required to communicate across the internet.
With our GitOps-friendly functionality, you can easily integrate Flipt into your CI/CD workflows to enable continuous configuration and deployment with confidence.
[!NOTE] We are actively working on a new version of Flipt that is Git-native with more features and less dependencies. Help us shape the future of Flipt by adding your thoughts to our tracking issue.
Flipt supports use cases such as:
Are we missing a feature that you'd like to see? Let us know!
We would love your help! Before submitting a PR, please read over the Contributing guide.
No contribution is too small, whether it be bug reports/fixes, feature requests, documentation updates, or anything else that can help drive the project forward.
Check out our public roadmap to see what we're working on and where you can help.
Not sure how to get started? You can:
Book a pairing session/code walkthrough with one of our teammates!
Join our Discord, and ask any questions there
Dive into any of the open issues, here are some examples:
Review the Architecture and Development documentation for more information on how Flipt works.
For help and discussion around Flipt, feature flag best practices, and more, join us on Discord.
Get started in seconds. Try the latest version of Flipt for yourself.
curl -fsSL https://get.flipt.io/install | sh
Try Flipt in a deployed environment!
Note: The database gets cleared every 30 minutes in this sandbox environment!
brew install flipt-io/brew/flipt
brew services start flipt
# or run in the foreground
flipt
Flipt UI will now be reachable at http://127.0.0.1:8080/.
docker run --rm -p 8080:8080 -p 9000:9000 -t docker.flipt.io/flipt/flipt:latest
Flipt UI will now be reachable at http://127.0.0.1:8080/.
For more permanent methods of running Flipt, see the Installation section.
Like to live on the edge? Can't wait for the next release? Our nightly builds include the latest changes on main
and are built.. well.. nightly.
docker run --rm -p 8080:8080 -p 9000:9000 -t docker.flipt.io/flipt/flipt:nightly
Check out our integration documentation for more info on how to integrate Flipt into your existing applications.
There are two ways to evaluate feature flags with Flipt:
Server-side evaluation is the most common way to evaluate feature flags. This is where your application makes a request to Flipt to evaluate a feature flag and Flipt responds with the result of the evaluation.
Flipt exposes two different APIs for performing server-side evaluation:
Flipt is equipped with a fully functional GRPC API. GRPC is a high-performance, low-latency, binary protocol that is used by many large-scale companies such as Google, Netflix, and more.
See our GRPC Server SDK documentation for the latest information.
Flipt is equipped with a fully functional REST API. The Flipt UI is completely backed by this same API. This means that anything that can be done in the Flipt UI can also be done via the REST API.
The Flipt REST API can also be used with any language that can make HTTP requests.
See our REST Server SDK documentation for the latest information.
Client-side evaluation is a great way to reduce the number of requests that your application needs to make to Flipt. This is done by retrieving all of the feature flags that your application needs to evaluate and then evaluating them locally.
See our Client SDK documentation for the latest information.
Flipt follows semantic versioning for versioning.
We aim to release a new minor version of Flipt every 2-3 weeks. This allows us to quickly iterate on new features. Bug fixes and security patches (patch versions) will be released as needed.
Development documentation is available for those interested in contributing to Flipt.
We welcome contributions of any kind, including but not limited to bug fixes, feature requests, documentation improvements, and more. Just open an issue or pull request and we'll be happy to help out!
Check out the examples to see how Flipt works in different use cases.
There are currently two types of licenses in place for Flipt:
All of the code required to generate GRPC clients in other languages as well as the Go SDK are licensed under the MIT License.
This code exists in the rpc/ directory.
The client code is the code that you would integrate into your applications, which is why a more permissive license is used.
The server code is licensed under the GPL 3.0 License.
See LICENSE.
Thanks goes to these wonderful people (emoji key):
This project follows the all-contributors specification. Contributions of any kind welcome!