You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+3-2
Original file line number
Diff line number
Diff line change
@@ -5,9 +5,10 @@ All notable changes to this project will be documented in this file.
5
5
The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
6
6
and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
7
7
8
-
## [Unreleased]
8
+
## [2.9.2] - March 13, 2023
9
9
10
-
- None yet!
10
+
### Enhancements
11
+
- We updated our README.md and other non-functional code to reflect that this SDK supports both Optimizely Feature Experimentation and Optimizely Full Stack. ([#190](https://github.com/optimizely/react-sdk/pull/190)).
Copy file name to clipboardExpand all lines: README.md
+48-24
Original file line number
Diff line number
Diff line change
@@ -1,18 +1,22 @@
1
1
# Optimizely React SDK
2
2
3
-
This repository houses the React SDK for use with Optimizely Full Stack and Optimizely Rollouts.
3
+
This repository houses the React SDK for use with Optimizely Feature Experimentation and Optimizely Full Stack (legacy).
4
4
5
-
Optimizely Full Stack is A/B testing and feature flag management for product development teams. Experiment in any application. Make every feature on your roadmap an opportunity to learn. Learn more at https://www.optimizely.com/platform/full-stack/, or see the [documentation](https://docs.developers.optimizely.com/full-stack/docs).
5
+
Optimizely Feature Experimentation is an A/B testing and feature management tool for product development teams that enables you to experiment at every step. Using Optimizely Feature Experimentation allows for every feature on your roadmap to be an opportunity to discover hidden insights. Learn more at [Optimizely.com](https://www.optimizely.com/products/experiment/feature-experimentation/), or see the [developer documentation](https://docs.developers.optimizely.com/experimentation/v4.0.0-full-stack/docs/welcome).
6
6
7
-
Optimizely Rollouts is free feature flags for development teams. Easily roll out and roll back features in any application without code deploys. Mitigate risk for every feature on your roadmap. Learn more at https://www.optimizely.com/rollouts/, or see the [documentation](https://docs.developers.optimizely.com/rollouts/docs).
7
+
Optimizely Rollouts is [free feature flags](https://www.optimizely.com/free-feature-flagging/) for development teams. You can easily roll out and roll back features in any application without code deploys, mitigating risk for every feature on your roadmap.
8
+
9
+
## Get Started
10
+
11
+
Refer to the [React SDK's developer documentation](https://docs.developers.optimizely.com/experimentation/v4.0.0-full-stack/docs/javascript-react-sdk) for detailed instructions on getting started with using the SDK.
8
12
9
13
### Features
10
14
11
15
- Automatic datafile downloading
12
16
- User ID + attributes memoization
13
17
- Render blocking until datafile is ready via a React API
14
18
- Optimizely timeout (only block rendering up to the number of milliseconds you specify)
15
-
- Library of React components and hooks to use with [feature flags](https://docs.developers.optimizely.com/full-stack/v4.0/docs/create-feature-flags)
19
+
- Library of React components and hooks to use with [feature flags](https://docs.developers.optimizely.com/experimentation/v4.0.0-full-stack/docs/create-feature-flags)
16
20
17
21
### Compatibility
18
22
@@ -57,21 +61,15 @@ class App extends React.Component {
57
61
}
58
62
```
59
63
60
-
# Contents
61
-
62
-
1.[Installation](#installation)
63
-
2.[Usage](#usage)
64
-
3.[Credits](#credits)
65
-
4.[Additional code](#additional-code)
66
-
5.[Contribute to this repo](#contribute-to-this-repo)
67
-
68
-
# Installation
64
+
### Install the SDK
69
65
70
66
```
71
67
npm install @optimizely/react-sdk
72
68
```
73
69
74
-
# Usage
70
+
## Use the React SDK
71
+
72
+
### Initialization
75
73
76
74
## `createInstance`
77
75
@@ -80,8 +78,8 @@ The `ReactSDKClient` client created via `createInstance` is the programmatic API
80
78
_arguments_
81
79
82
80
-`config : object` Object with SDK configuration parameters. This has the same format as the object passed to the `createInstance` method of the core `@optimizely/javascript-sdk` module. For details on this object, see the following pages from the developer docs:
`ReactSDKClient` instances have the methods/properties listed below. Note that in general, the API largely matches that of the core `@optimizely/optimizely-sdk` client instance, which is documented on the [Optimizely X Full Stack developer docs site](https://docs.developers.optimizely.com/full-stack/docs). The major exception is that, for most methods, user id & attributes are **_optional_** arguments. `ReactSDKClient` has a current user. This user's id & attributes are automatically applied to all method calls, and overrides can be provided as arguments to these method calls if desired.
322
+
`ReactSDKClient` instances have the methods/properties listed below. Note that in general, the API largely matches that of the core `@optimizely/optimizely-sdk` client instance, which is documented on the [Optimizely Feature Experimentation developer docs site](https://docs.developers.optimizely.com/experimentation/v4.0.0-full-stack/docs/welcome). The major exception is that, for most methods, user id & attributes are **_optional_** arguments. `ReactSDKClient` has a current user. This user's id & attributes are automatically applied to all method calls, and overrides can be provided as arguments to these method calls if desired.
325
323
326
324
-`onReady(opts?: { timeout?: number }): Promise<onReadyResult>` Returns a Promise that fulfills with an `onReadyResult` object representing the initialization process. The instance is ready when it has fetched a datafile and a user is available (via `setUser` being called with an object, or a Promise passed to `setUser` becoming fulfilled). If the `timeout` period happens before the client instance is ready, the `onReadyResult` object will contain an additional key, `dataReadyPromise`, which can be used to determine when, if ever, the instance does become ready.
327
325
-`user: User` The current user associated with this client instance
@@ -345,7 +343,7 @@ The following type definitions are used in the `ReactSDKClient` interface:
345
343
346
344
## Rollout or experiment a feature user-by-user
347
345
348
-
To rollout or experiment on a feature by user rather than by random percentage, you will use Attributes and Audiences. To do this, follow the documentation on how to [run a beta](https://docs.developers.optimizely.com/rollouts/docs/run-a-beta) using the React code samples.
346
+
To rollout or experiment on a feature by user rather than by random percentage, you will use Attributes and Audiences. To do this, follow the documentation on how to [run a beta](https://docs.developers.optimizely.com/experimentation/v4.0.0-full-stack/docs/run-a-beta) using the React code samples.
0 commit comments