Skip to content
A self contained feature flag solution
Branch: master
Clone or download
dependabot and markphelps Bump github.com/sirupsen/logrus from 1.3.0 to 1.4.0 (#30)
* Bump github.com/sirupsen/logrus from 1.3.0 to 1.4.0

Bumps [github.com/sirupsen/logrus](https://github.com/sirupsen/logrus) from 1.3.0 to 1.4.0.
- [Release notes](https://github.com/sirupsen/logrus/releases)
- [Changelog](https://github.com/sirupsen/logrus/blob/master/CHANGELOG.md)
- [Commits](sirupsen/logrus@v1.3.0...v1.4.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>

* Bump logrus
Latest commit 1a13e7d Mar 17, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Initial commit Feb 16, 2019
bin
build
cmd/flipt
config Cache (#6) Feb 24, 2019
docs Auth example (#28) Mar 9, 2019
examples Auth example (#28) Mar 9, 2019
internal/fs
proto Updating docs/examples Mar 3, 2019
scripts CI updates; prepping for 0.2.0 release Feb 25, 2019
server Godoc Mar 2, 2019
storage Godoc Mar 2, 2019
swagger Update API docs version info to latest Feb 19, 2019
ui Update docs link in UI Mar 1, 2019
vendor Bump github.com/sirupsen/logrus from 1.3.0 to 1.4.0 (#30) Mar 17, 2019
.dockerignore Initial commit Feb 16, 2019
.gitignore
.golangci.yml
.goreleaser.yml Update deps and goreleaser Mar 3, 2019
.travis.yml U5surf issue 2 (#20) Mar 1, 2019
BUILD.bazel Move protos into proto dir in prep for licensing them seperately Feb 19, 2019
CHANGELOG.md
CHANGELOG.template.md Initial commit Feb 16, 2019
Dockerfile Initial commit Feb 16, 2019
Gopkg.lock Bump github.com/sirupsen/logrus from 1.3.0 to 1.4.0 (#30) Mar 17, 2019
Gopkg.toml
LICENSE
Makefile CI updates; prepping for 0.2.0 release Feb 25, 2019
README.md Update README [ci skip] Mar 8, 2019
WORKSPACE Initial commit Feb 16, 2019
mkdocs.yml

README.md

Flipt

Build Status CodeClimate Coverage Go Report Card GitHub Release Join the chat at https://gitter.im/markphelps/flipt

A self contained feature flag solution.

Flipt

Documentation

Documentation is hosted at: https://flipt.dev/

What is Flipt

Flipt is an open source, self contained application that enables you to use feature flags and experiment (A/B test) across services, running in your environment.

This means that you can deploy Flipt within your existing infrastructure and not have to worry about your information being sent to a third party, or the latency required to communicate across the internet.

Flipt includes native client SDKs as well as a REST API so you can choose how to best integrate Flipt with your applications.

For more on Flipt and it's concepts, take a look at the Concepts documentation.

Flipt Features

Flipt enables you to add feature flag support to your existing applications, with a simple, single UI and API.

This can range from simple on/off feature flags to more advanced use cases where you want to be able to rollout different versions of a feature to percentages of your users.

Flipt features include:

  • Fast. Written in Go. Optimized for performance
  • Stand alone, easy to run server with no external dependencies
  • Ability to create advanced distribution rules to target segments of users
  • Native GRPC client SDKs to integrate with your applications
  • Simple REST API
  • Modern UI and debug console

Why Flipt

Many organizations understand the benefit of using feature flags in production, so they choose to implement them themselves in their main application or monolith.

As their organization grows, so does their infrastructure and functionality makes it's way into a multitude of other services. Many times those services aren't even implemented in the same language.

This is where their original feature flag solution tends to break down as it cannot be easily adapted to those services or languages. This results in:

  1. Not being able to use feature flags in a subset of services.
  2. Having multiple sources of truth for feature flags depending on the service/implementation which leads to unpredictability.

Flipt solves all of these issues and more, enabling you to focus on your applications without having to worry about implementing your own feature flag solution that works across your infrastructure.

On top of this, Flipt provides a nice, modern UI so that you can always monitor the state of your feature flags and experiments in a single place.

Running Flipt

Flipt is a single, self contained binary that you run on your own servers or cloud infrastructure. There are a multitude of benefits to running Flipt yourself, including:

  • Security. No data leaves your servers and you don't have to open your systems to the outside world to communicate with Flipt. It all runs within your existing infrastructure.
  • Speed. Since Flipt is co-located with your existing services, you do not have to communicate across the internet to another application running on the other side of the world which can add excessive latency and slow down your applications.
  • Simplicity. Flipt is a single binary with no dependencies. This means there is no external database to manage or connect to, no clusters to configure, and data backup is as simple as copying a single file.

Try It

❯ docker run --rm -p 8080:8080 -p 9000:9000 markphelps/flipt:latest

Flipt UI will now be reachable at http://localhost:8080/.

For more permanent methods of running Flipt, see the Installation section.

What's Next

To see Flipt in action, checkout an example.

Want to get up and running with Flipt? See Getting Started.

For a more detailed guide on how to setup and run Flipt, checkout the Installation documentation.

To learn how Flipt works, read up on it's Architecture.

For information on how to integrate Flipt with your existing applications, see the Integration guide.

Licensing

There are currently two types of licenses in place for Flipt:

  1. Client License
  2. Server License

Client License

All of the code required to generate GRPC clients in other languages as well as the existing GRPC Go client are licensed under the MIT License.

This code exists in the proto/ directory.

The client code is the code that you would integrate into your applications, which is why a more permissive license is used.

Server License

The server code is licensed under the GPL 3.0 License.

If there are any concerns about the use of this license for the server, please open an issue on GitHub so that we can discuss publicly.

Author

Contributing

I would love your help! Before submitting a PR, please read over the Contributing guide.

Here's a couple of areas that could use some love:

  • Documentation - Does something not make sense in the documentation? Could it be worded better? Please help!
  • Examples - More examples on how to use Flipt in other languages.
  • Javascripts - I'm no JavaScript expert, I'm sure the code in ui/src could be improved/simplified/tested.

Pro Version

My plan is to soon start working on a Pro Version of Flipt for enterprise. Along with support, some of the planned features include:

  • User management/permissions
  • Multiple environments
  • Audit log
  • Streaming updates
  • Metrics
  • HA support

If you or your organization would like to help beta test a Pro version of Flipt, please get in touch with me:

You can’t perform that action at this time.