cli

command module
v0.1.10 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 27, 2025 License: Apache-2.0 Imports: 1 Imported by: 0

README

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.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
cmd
internal
filesystem
Package filesystem contains the filesystem interface.
Package filesystem contains the filesystem interface.
flagkeys
Package commonflags contains keys for all command-line flags related to openfeature CLI.
Package commonflags contains keys for all command-line flags related to openfeature CLI.
generate
Package generate contains the top level functions used for generating flag accessors.
Package generate contains the top level functions used for generating flag accessors.
generate/manifestutils
Package manifestutils contains useful functions for loading the flag manifest.
Package manifestutils contains useful functions for loading the flag manifest.
generate/types
Package types contains all the common types and interfaces for generating flag accessors.
Package types contains all the common types and interfaces for generating flag accessors.
schema
v0
Package flagmanifest embeds the flag manifest into a code module.
Package flagmanifest embeds the flag manifest into a code module.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL