From 38ff1b39814c780f05d621aa4ddccb73d93038d9 Mon Sep 17 00:00:00 2001
From: Nicklas Lundin
Date: Wed, 13 Sep 2023 10:41:14 +0200
Subject: [PATCH] docs: prepare for archiving (#41)
* docs: prepare for archiving
* Update README.md
---
README.md | 171 +-----------------------------------------------------
1 file changed, 2 insertions(+), 169 deletions(-)
diff --git a/README.md b/README.md
index 7a4f33f..856c7af 100644
--- a/README.md
+++ b/README.md
@@ -7,174 +7,7 @@
-OpenFeature Kotlin SDKs
+## 👋 Hey there! This repo is archived.
-![Status](https://img.shields.io/badge/lifecycle-alpha-a0c3d2.svg) [![](https://jitpack.io/v/spotify/openfeature-kotlin-sdk.svg)](https://jitpack.io/#spotify/openfeature-kotlin-sdk)
+### You can find the official SDK in the [OpenFeature Kotlin SDK repo](https://github.com/open-feature/kotlin-sdk)
-## 👋 Hey there! Thanks for checking out the OpenFeature Kotlin SDK
-
-### What is OpenFeature?
-
-[OpenFeature][openfeature-website] is an open standard that provides a vendor-agnostic, community-driven API for feature flagging that works with your favorite feature flag management tool.
-
-### Why standardize feature flags?
-
-Standardizing feature flags unifies tools and vendors behind a common interface which avoids vendor lock-in at the code level. Additionally, it offers a framework for building extensions and integrations and allows providers to focus on their unique value proposition.
-
-## 🔍 Requirements
-
-- The Android minSdk version supported is: `21`.
-
-Note that this library is intended to be used in a mobile context, and has not been evaluated for use in other type of applications (e.g. server applications).
-
-## 📦 Installation
-
-### Jitpack
-
-The Android project must include `maven("https://jitpack.io")` in `settings.gradle`.
-
-You can now add the OpenFeature SDK dependency:
-```kotlin
-dependencies {
- api("com.github.spotify:openfeature-kotlin-sdk:")
-}
-```
-Please note that the `` can be any `Commit SHA` or a version based off a branch as following:
-```
-api("com.github.spotify:openfeature-kotlin-sdk:[ANY_BRANCH]-SNAPSHOT")
-```
-
-This will get a build from the head of the mentioned branch.
-
-### Maven
-
-Installation via Maven Central is currently WIP
-
-## 🌟 Features
-
-- support for various backend [providers](https://openfeature.dev/docs/reference/concepts/provider)
-- easy integration and extension via [hooks](https://openfeature.dev/docs/reference/concepts/hooks)
-- bool, string, numeric, and object flag types
-- [context-aware](https://openfeature.dev/docs/reference/concepts/evaluation-context) evaluation
-
-## 🚀 Usage
-
-```kotlin
- // configure a provider and get client
- OpenFeatureAPI.setProvider(customProvider)
- val client = OpenFeatureAPI.getClient()
-
- // get a bool flag value
- client.getBooleanValue("boolFlag", default = false)
-
- // get a bool flag value async
- coroutineScope.launch {
- WithContext(Dispatchers.IO) {
- client.awaitProviderReady()
- }
- client.getBooleanValue("boolFlag", default = false)
- }
-```
-
-### Events
-
-Events allow you to react to state changes in the provider or underlying flag management system, such as flag definition changes, provider readiness, or error conditions.
-Initialization events (`PROVIDER_READY` on success, `PROVIDER_ERROR` on failure) are dispatched for every provider.
-Some providers support additional events, such as `PROVIDER_CONFIGURATION_CHANGED`.
-Please refer to the documentation of the provider you're using to see what events are supported.
-
-```kotlin
- OpenFeatureAPI.eventsObserver()
- .observe()
- .collect {
- // do something once the provider is ready
- }
-```
-
-### Providers
-
-To develop a provider, you need to create a new project and include the OpenFeature SDK as a dependency.
-This can be a new repository or included in the existing contrib repository available under the OpenFeature organization.
-Finally, you’ll then need to write the provider itself.
-This can be accomplished by implementing the `Provider` interface exported by the OpenFeature SDK.
-
-```kotlin
-class NewProvider(override val hooks: List>, override val metadata: Metadata) : FeatureProvider {
- override fun getBooleanEvaluation(
- key: String,
- defaultValue: Boolean,
- context: EvaluationContext?
- ): ProviderEvaluation {
- // resolve a boolean flag value
- }
-
- override fun getDoubleEvaluation(
- key: String,
- defaultValue: Double,
- context: EvaluationContext?
- ): ProviderEvaluation {
- // resolve a double flag value
- }
-
- override fun getIntegerEvaluation(
- key: String,
- defaultValue: Int,
- context: EvaluationContext?
- ): ProviderEvaluation {
- // resolve an integer flag value
- }
-
- override fun getObjectEvaluation(
- key: String,
- defaultValue: Value,
- context: EvaluationContext?
- ): ProviderEvaluation {
- // resolve an object flag value
- }
-
- override fun getStringEvaluation(
- key: String,
- defaultValue: String,
- context: EvaluationContext?
- ): ProviderEvaluation {
- // resolve a string flag value
- }
-
- override fun initialize(initialContext: EvaluationContext?) {
- // add context-aware provider initialisation
- }
-
- override fun onContextSet(oldContext: EvaluationContext?, newContext: EvaluationContext) {
- // add necessary changes on context change
- }
-
-}
-```
-
-
-## ⭐️ Support the project
-
-- Give this repo a ⭐️!
-- Follow us on social media:
- - Twitter: [@openfeature](https://twitter.com/openfeature)
- - LinkedIn: [OpenFeature](https://www.linkedin.com/company/openfeature/)
-- Join us on [Slack](https://cloud-native.slack.com/archives/C0344AANLA1)
-- For more check out our [community page](https://openfeature.dev/community/)
-
-## 🤝 Contributing
-
-Interested in contributing? Great, we'd love your help! To get started, take a look at the [CONTRIBUTING](CONTRIBUTING.md) guide.
-
-### Thanks to everyone that has already contributed
-
-
-
-
-
-Made with [contrib.rocks](https://contrib.rocks).
-
-## 📜 License
-
-[Apache License 2.0](LICENSE)
-
-[openfeature-website]: https://openfeature.dev