Skip to content

Commit

Permalink
Merge branch 'main' into feat/context-propagation
Browse files Browse the repository at this point in the history
Signed-off-by: Lukas Reining <lukas.reining@codecentric.de>
  • Loading branch information
lukas-reining committed Jan 31, 2024
2 parents 7fcf7e6 + a0c79d7 commit 98030e8
Show file tree
Hide file tree
Showing 11 changed files with 595 additions and 252 deletions.
8 changes: 4 additions & 4 deletions .github/workflows/pr-checks.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- uses: actions/setup-python@v5

- name: Generate JSON files
Expand All @@ -34,7 +34,7 @@ jobs:
json-lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- uses: actions/setup-python@v5

- name: Lint
Expand All @@ -44,9 +44,9 @@ jobs:
markdown-toc:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
- uses: actions/setup-node@v3
- uses: actions/setup-node@v4
with:
node-version: "18"

Expand Down
21 changes: 21 additions & 0 deletions .github/workflows/repo-stats.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# Uses https://github.com/jgehrcke/github-repo-stats to overcome the 14-day limitation of GitHub's built-in traffic statistics.
name: "Repo Stats"

on:
schedule:
# Run this once per day, towards the end of the day for keeping the most
# recent data point most meaningful (hours are interpreted in UTC).
- cron: "0 23 * * *"
workflow_dispatch: # Allow for running this manually.

jobs:
snapshot:
name: github-repo-stats
runs-on: ubuntu-latest
steps:
- name: run-ghrs
# Use latest release.
uses: jgehrcke/github-repo-stats@v1.4.2
with:
databranch: github-repo-stats
ghtoken: ${{ secrets.REPO_STATS_TOKEN }}
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

0 comments on commit 98030e8

Please sign in to comment.