# OpenFeature > OpenFeature is an open specification that provides a vendor-agnostic, community-driven API for feature flagging. ## Documentation ### tutorials #### five-minutes-to-feature-flags We’re going to add feature flagging to a Node service in under five minutes using OpenFeature, the open, vendor-agnostic feature flagging SDK. - [Five Minutes to Feature Flags](https://openfeature.dev/docs/tutorials/five-minutes-to-feature-flags.md): We’re going to add feature flagging to a Node service in under five minutes using OpenFeature, the open, vendor-agnostic feature flagging SDK. #### getting-started - [Getting Started with the OpenFeature .NET SDK](https://openfeature.dev/docs/tutorials/getting-started/dotnet.md): Getting Started with the OpenFeature .NET SDK - [Getting Started with the OpenFeature Go SDK and Go Gin](https://openfeature.dev/docs/tutorials/getting-started/go.md): Getting Started with the OpenFeature Go SDK and Go Gin - [Getting Started with the OpenFeature Java SDK and Dropwizard](https://openfeature.dev/docs/tutorials/getting-started/java/dropwizard.md): Getting Started with the OpenFeature Java SDK and Dropwizard - [Getting Started with the OpenFeature Java SDK and Spring Boot](https://openfeature.dev/docs/tutorials/getting-started/java/spring-boot.md): Getting Started with the OpenFeature Java SDK and Spring Boot - [Getting Started with the OpenFeature JavaScript SDK on Express](https://openfeature.dev/docs/tutorials/getting-started/node.md): Getting Started with the OpenFeature JavaScript SDK on Express - [Getting Started with the OpenFeature PHP SDK on Laravel](https://openfeature.dev/docs/tutorials/getting-started/php.md): Getting Started with the OpenFeature PHP SDK on Laravel - [Getting Started with the OpenFeature Python SDK](https://openfeature.dev/docs/tutorials/getting-started/python.md): Getting Started with the OpenFeature Python SDK on Flask - [Getting Started with the OpenFeature Rust SDK and Axum](https://openfeature.dev/docs/tutorials/getting-started/rust.md): Getting Started with the OpenFeature Rust SDK and Axum (with Docker example) #### open-feature-cli ⚠️ The OpenFeature CLI is experimental! - [OpenFeature CLI](https://openfeature.dev/docs/tutorials/open-feature-cli.md): ⚠️ The OpenFeature CLI is experimental! #### open-feature-operator - [In-Process and Client-side Evaluation with flagd and OpenFeature Operator](https://openfeature.dev/docs/tutorials/open-feature-operator/advanced-topics.md): This tutorial outlines some of the advanced features and configurations supported by the OpenFeature operator and flagd. - [Quick Start: Cloud Native Feature-Flagging with the OpenFeature Operator](https://openfeature.dev/docs/tutorials/open-feature-operator/quick-start.md): In the following tutorial, we'll see how to leverage flagd and the OpenFeature Operator to enable cloud-native, self-hosted feature flags in your Kubernetes cluster. flagd is a "feature flag daemon with a Unix philosophy". ### reference #### intro 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. - [Welcome to OpenFeature](https://openfeature.dev/docs/reference/intro.md): 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. #### concepts - [Evaluation API](https://openfeature.dev/docs/reference/concepts/evaluation-api.md): The Evaluation API is the primary component of OpenFeature that application authors interact with. - [Evaluation Context](https://openfeature.dev/docs/reference/concepts/evaluation-context.md): The evaluation context is a container for arbitrary contextual data that can be used as a basis for dynamic evaluation. - [Events](https://openfeature.dev/docs/reference/concepts/events.md): Events enable the ability to react to state changes in the provider or underlying flag management system. - [Hooks](https://openfeature.dev/docs/reference/concepts/hooks.md): Hooks are a mechanism that allow for the addition of arbitrary behavior at well-defined points of the flag evaluation life-cycle. - [Providers](https://openfeature.dev/docs/reference/concepts/provider.md): Providers are responsible for performing flag evaluations. - [SDK Paradigms](https://openfeature.dev/docs/reference/concepts/sdk-paradigms.md): OpenFeature SDKs come in two "flavors"; those intended for use in server applications and those intended for use in client applications. - [Tracking](https://openfeature.dev/docs/reference/concepts/tracking.md): Tracking in OpenFeature is the process of associating metrics or KPIs with feature flag evaluation contexts. #### sdks OpenFeature SDKs and components for a range of supported languages and runtimes. - [SDK Technologies](https://openfeature.dev/docs/reference/sdks.md): OpenFeature SDKs and components for a range of supported languages and runtimes. - [Client](https://openfeature.dev/docs/reference/sdks/client.md): OpenFeature SDKs and components for client-side usage. - [OpenFeature Dart Client SDK](https://openfeature.dev/docs/reference/sdks/client/dart.md): Install and use the OpenFeature Dart SDK - [OpenFeature Kotlin SDK](https://openfeature.dev/docs/reference/sdks/client/kotlin.md): Install and use the OpenFeature Kotlin SDK - [OpenFeature iOS SDK](https://openfeature.dev/docs/reference/sdks/client/swift.md): Install and use the OpenFeature iOS SDK - [OpenFeature Web SDK](https://openfeature.dev/docs/reference/sdks/client/web.md): Install and use the OpenFeature Web SDK - [OpenFeature Angular SDK](https://openfeature.dev/docs/reference/sdks/client/web/angular.md): Install and use the OpenFeature Angular SDK - [OpenFeature React SDK](https://openfeature.dev/docs/reference/sdks/client/web/react.md): Install and use the OpenFeature React SDK - [SDK Compatibility Overview](https://openfeature.dev/docs/reference/sdks/sdk-compatibility.md): An overview of the status and supported features of the OpenFeature SDKs - [Server](https://openfeature.dev/docs/reference/sdks/server.md): OpenFeature SDKs and components for server-side usage. - [OpenFeature C++ SDK](https://openfeature.dev/docs/reference/sdks/server/cpp.md): Install and use the OpenFeature C++ SDK - [OpenFeature Dart SDK](https://openfeature.dev/docs/reference/sdks/server/dart.md): Install and use the OpenFeature Dart SDK - [OpenFeature .NET SDK](https://openfeature.dev/docs/reference/sdks/server/dotnet.md): Install and use the OpenFeature .NET SDK - [OpenFeature Go SDK](https://openfeature.dev/docs/reference/sdks/server/go.md): Install and use the OpenFeature Go SDK - [OpenFeature Java SDK](https://openfeature.dev/docs/reference/sdks/server/java.md): Install and use the OpenFeature Java SDK - [OpenFeature Node.js SDK](https://openfeature.dev/docs/reference/sdks/server/javascript.md): Install and use the OpenFeature Node.js SDK - [OpenFeature NestJS SDK](https://openfeature.dev/docs/reference/sdks/server/javascript/nestjs.md): Install and use the OpenFeature NestJS SDK - [OpenFeature PHP SDK](https://openfeature.dev/docs/reference/sdks/server/php.md): Install and use the OpenFeature PHP SDK - [OpenFeature Python SDK](https://openfeature.dev/docs/reference/sdks/server/python.md): Install and use the OpenFeature Python SDK - [OpenFeature Ruby SDK](https://openfeature.dev/docs/reference/sdks/server/ruby.md): Install and use the OpenFeature Ruby SDK - [OpenFeature Rust SDK](https://openfeature.dev/docs/reference/sdks/server/rust.md): Install and use the OpenFeature Rust SDK #### other-technologies - [OpenFeature CLI](https://openfeature.dev/docs/reference/other-technologies/cli.md): The OpenFeature CLI is a command-line tool designed to improve the developer experience when working with feature flags. - [OpenFeature MCP Server](https://openfeature.dev/docs/reference/other-technologies/mcp.md): The OpenFeature Model Context Protocol (MCP) Server enables AI coding assistants to interact with OpenFeature through a standardized protocol. - [OpenFeature Remote Evaluation Protocol (OFREP)](https://openfeature.dev/docs/reference/other-technologies/ofrep.md): The OpenFeature Remote Evaluation Protocol (OFREP) is an API specification for feature flagging that enables vendor-agnostic communication between applications and flag management systems. It defines a standard API layer between the provider and the flag management system, allowing any open source or commercial system to implement the protocol and be compatible with community-maintained providers. - [OpenFeature Remote Evaluation Protocol (OFREP) (0.4.0)](https://openfeature.dev/docs/reference/other-technologies/ofrep/openapi.md) ## Specification - [OpenFeature Specification](https://openfeature.dev/specification.md): An introduction to the OpenFeature specification. - [Appendix A: Included Utilities](https://openfeature.dev/specification/appendix-a.md): Information on OpenFeature ecosystem utilities - [Appendix B: Gherkin Suites](https://openfeature.dev/specification/appendix-b.md): A Set of End-to-End Tests for Validating OpenFeature Implementations - [Appendix C: OpenFeature Remote Evaluation Protocol](https://openfeature.dev/specification/appendix-c.md): A unified protocol for feature flagging - [Appendix D: Observability](https://openfeature.dev/specification/appendix-d.md): Conventions for OpenFeature telemetry signals - [Appendix E: Migrations](https://openfeature.dev/specification/appendix-e.md): Migration guidance for breaking spec changes - [Glossary](https://openfeature.dev/specification/glossary.md): A list of terms used within the OpenFeature specification. - [3. Evaluation Context](https://openfeature.dev/specification/sections/evaluation-context.md): The specification that defines the structure and expectations of evaluation context. - [5. Events](https://openfeature.dev/specification/sections/events.md): Specification defining event semantics - [1. Flag Evaluation API](https://openfeature.dev/specification/sections/flag-evaluation.md): The specification that defines the developer facing feature flag evaluation API. - [4. Hooks](https://openfeature.dev/specification/sections/hooks.md): The specification that defines the expectations and life cycle of hooks. - [2. Provider](https://openfeature.dev/specification/sections/providers.md): The specification that defines the interfaces, behaviors and responsibilities of providers. - [6. Tracking](https://openfeature.dev/specification/sections/tracking.md): Specification defining tracking API - [Types and Data Structures](https://openfeature.dev/specification/types.md): A description of types and data structures used within the OpenFeature specification. ## Optional - [flagd](https://flagd.dev/): OpenFeature-compliant feature flag evaluation engine - [OpenFeature on GitHub](https://github.com/open-feature)