Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs: improve spec readme #232

Merged
merged 3 commits into from
Jan 16, 2024
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
55 changes: 39 additions & 16 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,32 +1,55 @@
# OpenFeature Specification
<!-- markdownlint-disable MD033 -->
<!-- x-hide-in-docs-start -->
<p align="center">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/open-feature/community/0e23508c163a6a1ac8c0ced3e4bd78faafe627c7/assets/logo/horizontal/white/openfeature-horizontal-white.svg" />
<img align="center" alt="OpenFeature Logo" src="https://raw.githubusercontent.com/open-feature/community/0e23508c163a6a1ac8c0ced3e4bd78faafe627c7/assets/logo/horizontal/black/openfeature-horizontal-black.svg" />
</picture>
</p>

[![Roadmap](https://img.shields.io/static/v1?label=Roadmap&message=public&color=green)](https://github.com/orgs/open-feature/projects/1) [![Contributing](https://img.shields.io/static/v1?label=Contributing&message=guide&color=blue)](https://github.com/open-feature/.github/blob/main/CONTRIBUTING.md) [![Code of Conduct](https://img.shields.io/badge/Contributor%20Covenant-2.1-4baaaa.svg)](https://github.com/open-feature/.github/blob/main/CODE_OF_CONDUCT.md)
<h2 align="center">OpenFeature Specification</h2>

This repository describes the requirements and expectations for OpenFeature.
<!-- x-hide-in-docs-end -->
<!-- The 'github-badges' class is used in the docs -->
<p align="center" class="github-badges">
<a href="https://github.com/orgs/open-feature/projects/1">
<img alt="Roadmap" src="https://img.shields.io/static/v1?label=Roadmap&message=public&color=green" />
</a>
<a href="https://github.com/open-feature/.github/blob/main/CONTRIBUTING.md">
<img alt="Contributing" src="https://img.shields.io/static/v1?label=Contributing&message=guide&color=blue" />
</a>
<a href="https://cloud-native.slack.com/archives/C0344AANLA1">
<img alt="Slack" src="https://img.shields.io/badge/slack-%40cncf%2Fopenfeature-brightgreen?style=flat&logo=slack"/>
</a>
<a href="https://bestpractices.coreinfrastructure.org/projects/6601">
<img alt="CII Best Practices" src="https://bestpractices.coreinfrastructure.org/projects/6601/badge" />
</a>
</p>
<!-- x-hide-in-docs-start -->

[OpenFeature](https://openfeature.dev) 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.

> :warning: Ongoing research can be found in the [research repo](https://github.com/open-feature/research). For definitions of key terminology, see the [glossary](./specification/glossary.md).
This repository describes the requirements and expectations for OpenFeature.

## Design Principles

- Compatibility with existing feature flag offerings
- Simple, understandable APIs
- Vendor agnosticism
- Language agnosticism
- Low/no dependency
- Extensibility
The OpenFeature specification must be designed with:

- compatibility with existing feature flag offerings.
- simple, understandable APIs.
- vendor agnosticism.
- language agnosticism.
- low/no dependency.
- extensibility.

### SDKs and Client Libraries

The project aims to provide a unified API and SDK for feature flag management in various technology stacks.
The project aims to provide a unified API and SDK feature flag evaluation across popular technology stacks.
The OpenFeature SDK provides a mechanism for interfacing
with an external evaluation engine in a vendor agnostic way;
it does **not** itself handle the flag evaluation logic.

The OpenFeature project will include client libraries for common technology stacks including, but not limited to:

- Golang
- Java
- JavaScript/TypeScript (Node.js)
An up-to-date SDK compatibility overview can be found [here](https://openfeature.dev/docs/reference/technologies/sdk-compatibility).

### Tooling

Expand Down
Loading