@customerglu/react-web-sdk
Version:
This React Component allows developers to integrate with CustomerGlu Gamification Platform easily
123 lines (86 loc) • 4.46 kB
Markdown
[](https://badge.fury.io/js/@customerglu%2Freact-web-sdk)
CustomerGlu enables growth teams to run gamified programs in minutes, using a low code builder. This package is the SDK for React Web apps.
- [Installation](
- [Usage](
- [Props](
- [Contributing](
- [License](
You can install the package using npm or yarn:
```sh
npm install @customerglu/react-web-sdk
```
Here’s a basic example of how to use the component in your project:
```jsx
import { CustomerGluComponent } from "@customerglu/react-web-sdk";
export default function App() {
return (
<div className="App">
<div
id="embedId"
style={{
margin: "10px",
border: "1px solid #E2E8F0",
borderRadius: "8px",
height: "fit-content",
width: "380px",
display: "flex",
alignItems: "center",
justifyContent: "center",
cursor: "pointer",
}}
>
<CustomerGluComponent
userId="<YOUR-USER-ID>"
gluToken="<USER-GLU_TOKEN>"
region="<REGION>"
>
<Loader /> // you can render your loading component
<CustomerGluComponent />
</div>
</div>
);
}
```
> Note: `id` of the div is configured from the CustomerGlu dashboard while creating the nudge for the particular campaign.
| Prop Name | Type | Default | Description |
| ---------- | ------ | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `userId` | string | `''` | This field is used to provide a user identifier whenever user logs in, in the app flow. This field is not mandatory, and SDK would assign an anonymous ID in case `userId` is not provided. |
| `gluToken` | string | | **(Required)** This can be generated by the API provided by CustomerGlu. |
| `children` | node | | A loader component that is displayed while the SDK is being initialized. |
| `region` | string | `'in'` | The datacenter location for your CustomerGlu account. We support 2 datacenter locations: `'in'`, `me` or `'us'` |
For enabling the Activity Processing for the user we need to enable it from the following method:
```jsx
import { gluEnableActivityProcessing } from "@customerglu/react-web-sdk";
gluEnableActivityProcessing("<USER-GLU_TOKEN>", "<CAMPAIGN_ID>");
```
| Argument Name | Type | Default | Description |
| ---------------- | ------ | ------- | ---------------------------------------------------------------------------------------------------------------------------- |
| `USER-GLU_TOKEN` | string | `''` | **(Required)** This can be generated by the API provided by CustomerGlu |
| `CAMPAIGN_ID` | string | `''` | **(Required)** CampaignId can be obtained from the dashboard for the campaign where you want to enable activity processing.. |
Contributions are welcome! Please open an issue or submit a pull request.
To get started with development, clone the repository and install dependencies:
```sh
git clone https://github.com/customerglu/customerglu-components.git
cd customerglu-components
npm install
```
- Added Support for ME Api
- Remove addition checks
- Added fix for Singleton instance
- Improved resource management for better performance and efficiency.
This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.