π Announcing Flipt v2: Help Shape the Future of Flipt!
Weβre excited to announce that weβve started planning for Flipt v2, and we want your input to make it even better! π
The high-level plan for Flipt v2 focuses on improving usability, flexibility, and compatibility while tackling key pain points from v1. Below is an overview of our current plan, including goals and non-goals.
This is a working document, and your feedback is crucial to ensure Flipt v2 meets the needs of the community. If you have ideas, concerns, or suggestions, please share them as comments on this issue. Let's make Flipt v2 a success together! π¬
π Development Plan
Goals
- Declarative storage backend: Remove database dependencies for flag state.
- GitOps workflows: Full support, including write operations.
- API compatibility: Maintain compatibility with current Flipt Evaluation APIs.
- Simplified configuration: Consolidate/remove unnecessary options.
- Authentication improvements: Support for Redis and in-memory backends.
- Declarative API: New API for managing flag configuration.
- Legacy cleanup: Remove legacy evaluation APIs and address v1 issues.
- UI enhancements: Improve where necessary.
- Optional features:
- Support write operations to object storage backends.
- Enable approval workflows for Git-based setups.
Non-Goals
- Compatibility with current Flipt Management APIs.
- Backward compatibility with v1 configuration files.
- Changes to v1 base types (flags, segments, etc.).
π§ We Need Your Input!
Weβd love to hear your thoughts on:
- What features or improvements would you like to see in Flipt v2?
- Do the goals align with your needs as a user or contributor?
- Are there areas you think should be prioritized during development?
- Is there anything else you'd like to share?
To join the conversation, simply comment on this issue. You can also open a separate issue and tag it with v2 if you want to dive deeper into a specific topic.
Thank you for helping us make Flipt v2 the best it can be! π
Feel free to suggest edits or raise any concerns below!
For the following item:
GitOps workflows: Full support, including write operations
CMIIW, this feature is already present in the cloud version right?
Hey @agsha that is correct. We're bringing these capabilities into v2.
Maybe Flipt can also support Remote Config stuff?
Maybe Flipt can also support Remote Config stuff?
@thepabloaguilar definitely! I think we just need more context on what specifically folks would want supported. Is it just storing a json blob as a first class thing (ie not having to nest it under a flag->metadata)?
Feature Request: Hooks to plug in our own analytics systems in the client-sdk. So when using client side evaluation, during initialization of the engine, we can pass callbacks which will be invoked anytime there is a feature evaluation. We can implement the callback to write to our analytics backend (maybe BigQuery or kafka or some such)
@agsha great shout! moving this to the client sdks repo to continue the discussion there
This is a great time to drop /meta/config endpoint.
GitOps workflows: Full support, including write operations.
Amazing! Will this remain an open-source?
Feature request: streaming of config for GitOps client-side evaluation.
GitOps workflows: Full support, including write operations.
Amazing! Will this remain an open-source?
Feature request: streaming of config for GitOps client-side evaluation.
@sw-tracker yes! It will remain open source and we will add support for streaming like we have in Flipt Cloud.
We will add some enterprise features such as pull requests support and others that will require a license (paid) but the general functionality as it exists today will remain free and open source (including streaming)
If you could include this one it would be amazing ! https://github.com/flipt-io/flipt/issues/2975
If you could include this one it would be amazing ! https://github.com/flipt-io/flipt/issues/2975
Yes we will! I just need to find some time to get it over the line
Hi! As a feature request, it would be awesome for being able to combine individual user/entity configuration of a feature flag with the default flag resolution logic. That would allow us to provide a self-service for feature flags (mainly toggles) without needing a separate service to store this information. Even better if this works with the GitOps flow - developers keep using GitOps, while users can decide to opt-in on a feature behind a toggle.
I'm not sure if anyone else has the same use case as us, but we are exclusively using read-only storage mode with declarative management (git for prod and local for dev) and would like to have the ability to still receive webhook payload audit events to our backend. From my understanding, the audit events only work when read-only is not set (or is false).
Overall, we are thoroughly enjoying Flipt and looking forward to seeing v2! Especially the GitOps features.
Hi! As a feature request, it would be awesome for being able to combine individual user/entity configuration of a feature flag with the default flag resolution logic. That would allow us to provide a self-service for feature flags (mainly toggles) without needing a separate service to store this information. Even better if this works with the GitOps flow - developers keep using GitOps, while users can decide to opt-in on a feature behind a toggle.
Hey @JanSvejda ππ» Im not sure I fully understand what you're asking for, would you mind opening a new issue and tagging it as v2 with maybe a longer description or sketch of this feature? Thank you!!
I'm not sure if anyone else has the same use case as us, but we are exclusively using read-only storage mode with declarative management (
gitfor prod andlocalfor dev) and would like to have the ability to still receive webhook payload audit events to our backend. From my understanding, the audit events only work when read-only is not set (or is false).Overall, we are thoroughly enjoying Flipt and looking forward to seeing v2! Especially the GitOps features.
Hey @mitchs-dev ! Glad you are enjoying Flipt. I definitely think we can support webhook payloads for audit events for v2 (via writes to git from UI). The alpha version of v2 will likely not have audit event support because I'd like to rethink how it was implemented from teh ground up (not a huge fan of how it works today in v1). But it will come as a fast follow up.
All, I just released v2 alpha along with some basic documentation (still a work in progress)
Please follow along on this discussion and add any feedback/ideas/etc there: https://github.com/orgs/flipt-io/discussions/4141
Any ideas what the migration might look like, especially for those using a db backend?
Any ideas what the migration might look like, especially for those using a db backend?
@Jasz we'll create a migration guide, but essentially it should be as simple as exporting your existing data via flipt export and putting it in a git repo and configuring v2 to point at this repo
That sounds great, thank you.
Update: Flipt v2.0.0 is Now Stable and Ready for Production
Hey everyone! Flipt v2 has come a long way since this planning issue was created. Flipt v2.0.0 is now stable and ready for production use.
All Major Goals Achieved
The goals we outlined in this issue have been successfully implemented:
- Git-Native Storage: Feature flags are stored directly in your Git repositories
- GitOps Workflows: Full read/write operations through Git with UI and API support
- Simplified Configuration: Works out-of-the-box with minimal setup
- Enhanced Authentication: Improved auth system included
Backward Compatibility
v2 maintains backward compatibility with v1 APIs and SDKs, so no code changes are required when upgrading from v1.
Getting Started
- Introduction & Concepts: https://docs.flipt.io/v2/introduction
- Quickstart Guide: https://docs.flipt.io/v2/quickstart
- Installation Options: https://docs.flipt.io/v2/installation (Docker, Binary, Kubernetes/Helm)
- Kubernetes Deployment: https://docs.flipt.io/v2/guides/operations/deployment/deploy-to-kubernetes
Migration Resources
- From Flipt Cloud: https://docs.flipt.io/v2/guides/migration/cloud/flipt-cloud-to-v2
- Architecture Differences: https://docs.flipt.io/v2/introduction#differences-from-v1
Key Features
- Multi-Git provider support (GitHub, GitLab, BitBucket, Azure DevOps, Gitea)
- Environment management with branch-based and directory-based environments
- Completely redesigned UI
- Production-ready with security, observability, and scaling features
The vision we discussed in this issue is now reality and available for production use. Would love to hear from anyone who has started using v2 about their experience.