Feature management with version control
Manage your feature flags, experiment variations, variables for remote configuration
declaratively from the comfort of your Git workflow.
Website | Documentation | Issues | Contributing | Changelog
Built by @fahad19 and contributors
How does it work?
Three simple steps to visualize it:
- Manage your Featurevisor project in a Git repository
- Build and upload datafiles (static JSON files) to your CDN or custom server
- Fetch the datafile in your application, and evaluate features using SDKs
What do I need to bring to use Featurevisor?
- A Git repository for managing your project declaratively
- A CI/CD pipeline (like GitHub Actions) for building and uploading datafiles
- A CDN or custom server for serving the generated datafiles
Featurevisor SDKs will take care of the rest for you.
Understanding the building blocks
The core building blocks of a Featurevisor project are:
- Attributes: building block for conditions
- Segments: reusable conditions for targeting users
- Features: features with flag, variation, and variable definitions
- Global variables: independently evaluated configuration values
SDKs evaluate feature values against the context provided by your application. All current Featurevisor SDKs support independent global variables:
- Flags: on/off values against rules
- Variations: string values for A/B tests
- Feature variables: typed values owned by a feature
- Global variables: typed values with their own targeting and lifecycle
Where can I use Featurevisor?
Supported SDKs include:
- JavaScript
- React
- React Native
- Vue.js
- Next.js
- Go
- Python
- PHP
- Ruby
- Java
- Kotlin
- Swift
- Rust
- Elixir
- OpenFeature providers for Node.js, browsers, Go, Swift, Java and Kotlin, Ruby, Python, PHP, Rust, and Elixir
Using Featurevisor with AI agents
Featurevisor ships an official skill that teaches AI agents (like Claude Code, Cursor, Codex, and OpenCode) how to work with your project: creating features and segments, writing rollout rules and test specs, debugging evaluations, promoting between sets, and integrating SDKs in your applications.
Install it in your Featurevisor project (or your app repository) via skills.sh:
$ npx skills add featurevisor/featurevisor
Then prompt your agent naturally:
- "Create a
showWishlistfeature, tagged web, starting at 5% in production" - "Why is
checkoutdisabled for userId 123 in the Netherlands?" - "Roll out
newEditorto employees first, then beta users, then everyone"
Pair it with npx featurevisor catalog running locally to visually review every change your agent makes, live in the browser.
The skill's source lives in this repository under skills/.
Why should I use Featurevisor?
Several use cases include:
- Decoupling application deployments from feature releases
- Progressive delivery with gradual rollout of features
- Testing in production
- Experiment with A/B and Multivariate tests
- Role-based feature gating
- Remote configuration with advanced variables
- Establishing feature ownership and governance
- Trunk based development
- Aligning multiple teams in a microfrontends architecture
- Feature dependencies management
- Deprecating features safely
License
MIT © Fahad Heylaal


