{"id":20607718,"url":"https://github.com/open-feature/protocol","last_synced_at":"2025-03-06T17:25:07.932Z","repository":{"id":222867213,"uuid":"728683470","full_name":"open-feature/protocol","owner":"open-feature","description":"OpenFeature Remote Evaluation Protocol","archived":false,"fork":false,"pushed_at":"2024-05-18T06:24:10.000Z","size":39,"stargazers_count":13,"open_issues_count":5,"forks_count":2,"subscribers_count":8,"default_branch":"main","last_synced_at":"2024-05-18T17:58:20.687Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://openfeature.dev","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/open-feature.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-12-07T13:21:12.000Z","updated_at":"2024-05-30T07:42:20.490Z","dependencies_parsed_at":"2024-04-30T21:43:54.190Z","dependency_job_id":"414fca52-6c9f-44f3-8a26-00a2d1deb7db","html_url":"https://github.com/open-feature/protocol","commit_stats":null,"previous_names":["open-feature/protocol"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-feature%2Fprotocol","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-feature%2Fprotocol/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-feature%2Fprotocol/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-feature%2Fprotocol/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/open-feature","download_url":"https://codeload.github.com/open-feature/protocol/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":242252432,"owners_count":20097196,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-16T10:08:25.295Z","updated_at":"2025-03-06T17:25:07.904Z","avatar_url":"https://github.com/open-feature.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# OpenFeature Remote Evaluation Protocol (OFREP)\n\n---\n\n\u003cp align=\"center\"\u003e\n  \u003cpicture\u003e\n    \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"https://raw.githubusercontent.com/open-feature/community/0e23508c163a6a1ac8c0ced3e4bd78faafe627c7/assets/logo/horizontal/white/openfeature-horizontal-white.svg\" /\u003e\n    \u003cimg align=\"center\" alt=\"OpenFeature Logo\" src=\"https://raw.githubusercontent.com/open-feature/community/0e23508c163a6a1ac8c0ced3e4bd78faafe627c7/assets/logo/horizontal/black/openfeature-horizontal-black.svg\" /\u003e\n  \u003c/picture\u003e\n\u003c/p\u003e\n\n![WIP](https://img.shields.io/badge/status-WIP-red)  \n:warning: __OpenFeature Remote Evaluation Protocol is a WIP initiative, expect breaking changes__ :warning:\n\n\n## What is OFREP?\nOpenFeature Remote Flag Evaluation Protocol, is an API specification for feature flagging that allows the use of generic providers to connect to any feature flag management systems that supports the protocol.\n\n\n## Goals\n- develop a client/server feature flag evaluation protocol:\n  - define payloads sent between client and server\n  - define the resources and functions available on the server\n  - define the supported transports and encoding methods\n  - define mechanisms for metadata delivery and transport configuration (headers, etc)\n- develop production-ready reference implementation\n  - compliant server\n  - compliant client (provider)\n    - highly configurable and modular\n    - compatible with any server implementation\n\n## Non-Goals\n\n- defining a schema for the definition or storage of feature flags\n- defining an expression language for feature flag targeting rules\n\n## Design Principles\n\nWe value the following:\n  - adherence to OpenFeature semantics\n  - maximum compatibility and ease-of-adoption for existing solutions\n  - minimum traffic and payload size\n  - low latency of flag evaluations\n  - portability and interoperability between runtimes and languages (should be usable in web, mobile devices, and server)\n  - minimum reliance on dependencies (leverage ubiquitous, native transports and encodings where possible)\n\n## Providers\n- [GO](https://github.com/open-feature/go-sdk-contrib/tree/main/providers/ofrep)\n- [JS Server](https://github.com/open-feature/js-sdk-contrib/tree/main/libs/providers/ofrep)\n- [JS Web](https://github.com/open-feature/js-sdk-contrib/tree/main/libs/providers/ofrep-web)\n \n## Contribution\nIf you are interested about the OpenFeature Remote Evaluation Protocol you can join the [`#openfeature-remote-evaluation-protocol`](https://cloud-native.slack.com/archives/C066A48LK35) slack channel on the [CNCF Slack](https://communityinviter.com/apps/cloud-native/cncf).\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopen-feature%2Fprotocol","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopen-feature%2Fprotocol","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopen-feature%2Fprotocol/lists"}