OpenFeature’s official command-line tool
Go to file
Michael Beemer 0bb2ec3154
Merge branch 'main' into add-install-script
2025-03-28 12:47:29 -04:00
.github/workflows refactor!: add init command, update cli flags, support a config file (#71) 2025-03-14 16:12:26 -04:00
bin default to $HOME/.local/bin 2025-03-28 16:43:28 +00:00
cmd feat(cli): add stability annotations to generated Markdown documentation (#88) 2025-03-27 19:20:36 +00:00
docs feat(cli): add stability annotations to generated Markdown documentation (#88) 2025-03-27 19:20:36 +00:00
internal feat: add contributing guide and generator readme (#80) 2025-03-18 23:08:49 +00:00
sample refactor!: add init command, update cli flags, support a config file (#71) 2025-03-14 16:12:26 -04:00
schema refactor!: add init command, update cli flags, support a config file (#71) 2025-03-14 16:12:26 -04:00
.gitignore refactor!: add init command, update cli flags, support a config file (#71) 2025-03-14 16:12:26 -04:00
.goreleaser.yaml Merge branch 'main' into add-install-script 2025-03-18 17:06:54 -04:00
.release-please-manifest.json chore(main): release 0.3.1 (#84) 2025-03-18 20:03:47 +00:00
CHANGELOG.md chore(main): release 0.3.1 (#84) 2025-03-18 20:03:47 +00:00
CONTRIBUTING.md feat: add contributing guide and generator readme (#80) 2025-03-18 23:08:49 +00:00
Dockerfile fix: binary name referenced in the dockerfile 2025-03-18 16:02:02 -04:00
LICENSE
Makefile refactor!: add init command, update cli flags, support a config file (#71) 2025-03-14 16:12:26 -04:00
README.md docs: switch from code gen to cli (#47) 2024-10-31 19:12:57 +00:00
go.mod chore: upgrade viper to 1.20 (#78) 2025-03-16 11:51:46 -04:00
go.sum chore: upgrade viper to 1.20 (#78) 2025-03-16 11:51:46 -04:00
main.go refactor: change name of go module (#46) 2024-10-31 19:15:05 +00:00
release-please-config.json ci: update release process (#57) 2024-11-05 15:42:37 -05:00

README.md

OpenFeature Logo

OpenFeature CLI

work-in-progress Slack

[!CAUTION] The OpenFeature CLI is experimental! Feel free to give it a shot and provide feedback, but expect breaking changes.

OpenFeature is an open specification that provides a vendor-agnostic, community-driven API for feature flagging that works with your favorite feature flag management tool or in-house solution.

Overview

The OpenFeature CLI is a command-line tool designed to improve the developer experience when working with feature flags. Currently, features are focused primarily on supporting code generation.

Installation

Download packaged binaries from the releases page.

Why Code Generation?

Code generation automates the creation of strongly typed flag accessors, minimizing configuration errors and providing a better developer experience. By generating these accessors, developers can avoid issues related to incorrect flag names or types, resulting in more reliable and maintainable code.

Goals

  • Unified Flag Manifest Format: Establish a standardized flag manifest format that can be easily converted from existing configurations.
  • Strongly Typed Flag Accessors: Develop a CLI tool to generate strongly typed flag accessors for multiple programming languages.
  • Modular and Extensible Design: Create a format that allows for future extensions and modularization of flags.

Non-Goals

  • Full Provider Integration: The initial scope does not include creating tools to convert provider-specific configurations to the new flag manifest format.
  • Validation of Flag Configs: The project will not initially focus on validating flag configurations for consistency with the flag manifest.
  • General-Purpose Configuration: The project will not aim to create a general-purpose configuration tool for feature flags beyond the scope of the code generation tool.

Support the project

Thanks to everyone who has already contributed

Pictures of the folks who have contributed to the project

Made with contrib.rocks.