5.32.0 • Published 4 months ago

@stigg/react-sdk v5.32.0

Weekly downloads
-
License
MIT
Repository
-
Last release
4 months ago

@stigg/react-sdk

Stigg SDK for React single page applications (SPA).

Table of contents

Installation

Using npm

npm install @stigg/react-sdk

Using yarn

yarn add @stigg/react-sdk

Getting Started

Configure the SDK by wrapping your application in StiggProvider:

import React from 'react';
import ReactDOM from 'react-dom';
import { StiggProvider } from '@stigg/react-sdk';
import App from './App';

ReactDOM.render(
  <StiggProvider apiKey="YOUR_CLIENT_API_KEY">
    <App />
  </StiggProvider>,
  document.getElementById('app'),
);

Paywall

Use Paywall components to render the public pricing page or customer paywall:

<Paywall
  highlightedPlanId="plan-id"
  onPlanSelected={({ plan, customer }) => {
    // Handle customer intention to subscribe to plan
  }}
/>

Hooks

Use useStigg React hook to access stigg Javascript client easily from every component:

import React from 'react';
import { useStiggContext } from '@stigg/react-sdk';

function App() {
  const { stigg } = useStiggContext();

  useEffect(() => {
    // Use stigg Javascript client function
    stigg.getBooleanEntitlement(...)
  })
}

Customization options

The components included in of this package comes with default styling, and you can customize and change the appearance:

Global customization options

You can pass customization options such as theming and locale to StiggProvider component:

import React from 'react';
import ReactDOM from 'react-dom';
import { StiggProvider } from '@stigg/react-sdk';
import App from './App';

// Example of the options that are available for the theme
const theme = {
  palette: {
    primary: '#FFA500',
    backgroundPaper: '#fcfbf8',
    backgroundHighlight: '#FFF3E0',
    outlinedHoverBackground: '#FFE0B2',
  },
  layout: {
    planMinWidth: '250px',
    planMaxWidth: '250px',
    ctaAlignment: 'center',
    headerAlignment: 'center',
    descriptionAlignment: 'center',
  },
  typography: {
    bodyFontFamily: 'Courier New',
    headingFontFamily: 'Courier New',
  },
};

ReactDOM.render(
  <StiggProvider apiKey="YOUR_CLIENT_API_KEY" theme={theme} locale="de-DE">
    <App />
  </StiggProvider>,
  document.getElementById('app'),
);

Component level customization options

You can pass customization options per component, for example customize the paywall text:

const textOverrides = {
    highlightChip: 'Best value',
    planCTAButton: {
        startTrial: (plan: PaywallPlan) => `Start trial (${plan.defaultTrialConfig.duration} days)`,
        upgrade: 'Start now',
        custom: 'Contact us',
    },
    price: {
        custom: 'Contact us',
    },
}

<Paywall
    highlightedPlanId="plan-id"
    onPlanSelected={({ plan, customer }) => {
        // Handle customer intention to subscribe to plan
    }}
    textOverrides={textOverrides}
/>
5.31.0

4 months ago

5.32.0

4 months ago

5.27.0

7 months ago

5.30.1

6 months ago

5.30.0

6 months ago

5.28.4

6 months ago

5.28.3

7 months ago

5.28.2

7 months ago

5.28.1

7 months ago

5.28.0

7 months ago

5.29.0

6 months ago

5.24.1

9 months ago

5.25.0

9 months ago

5.26.0

8 months ago

5.23.1

10 months ago

5.24.0

10 months ago

5.20.0

11 months ago

5.21.0

11 months ago

5.19.1

11 months ago

5.22.1

11 months ago

5.22.0

11 months ago

5.23.0

11 months ago

5.15.0

1 year ago

5.16.1

1 year ago

5.16.0

1 year ago

5.17.0

1 year ago

5.18.0

11 months ago

5.19.0

11 months ago

5.15.1

1 year ago

5.14.0

1 year ago

5.13.1

1 year ago

5.13.0

1 year ago

5.12.0

1 year ago

5.11.1

1 year ago

5.11.0

1 year ago

5.8.0

2 years ago

5.9.0

2 years ago

5.10.0

2 years ago

5.7.0

2 years ago

5.3.0

2 years ago

5.4.0

2 years ago

5.5.1

2 years ago

5.5.0

2 years ago

5.6.0

2 years ago

5.2.1

2 years ago

5.2.0

2 years ago

5.1.0

2 years ago

5.0.0

2 years ago

4.15.0

2 years ago

4.14.0

2 years ago

4.13.2

2 years ago

4.13.1

2 years ago

4.13.0

2 years ago

4.12.1

2 years ago

4.12.0

2 years ago

4.11.0

2 years ago

4.9.0

2 years ago

4.10.0

2 years ago

4.5.4

2 years ago

4.5.3

2 years ago

4.5.5

2 years ago

4.4.0-beta.12

2 years ago

4.4.0-beta.11

2 years ago

2.8.1

2 years ago

4.4.0-beta.10

2 years ago

2.8.0

2 years ago

4.4.1

2 years ago

4.4.0

2 years ago

4.4.3

2 years ago

4.4.2

2 years ago

4.0.0

2 years ago

3.0.0-beta.1

2 years ago

3.0.0-beta.0

2 years ago

3.0.0-beta.3

2 years ago

3.0.0-beta.2

2 years ago

4.8.1

2 years ago

4.4.5

2 years ago

3.0.0-beta.5

2 years ago

4.8.0

2 years ago

4.4.4

2 years ago

3.0.0-beta.4

2 years ago

3.0.0-beta.7

2 years ago

4.4.6

2 years ago

3.0.0-beta.6

2 years ago

3.0.0-beta.9

2 years ago

3.0.0-beta.8

2 years ago

2.7.0

2 years ago

4.3.2

2 years ago

4.3.1

2 years ago

4.7.0

2 years ago

4.3.3

2 years ago

4.3.0

2 years ago

4.3.0-beta.1

2 years ago

4.3.0-beta.0

2 years ago

4.4.0-beta.7

2 years ago

4.4.0-beta.8

2 years ago

4.4.0-beta.5

2 years ago

4.4.0-beta.6

2 years ago

4.4.0-beta.9

2 years ago

4.4.0-beta.0

2 years ago

4.4.0-beta.3

2 years ago

4.7.1

2 years ago

4.4.0-beta.4

2 years ago

4.4.0-beta.1

2 years ago

4.4.0-beta.2

2 years ago

3.0.2

2 years ago

3.0.1

2 years ago

3.0.0

2 years ago

4.2.3

2 years ago

4.2.2

2 years ago

4.6.1

2 years ago

4.6.0

2 years ago

4.2.4

2 years ago

4.2.1

2 years ago

4.2.0

2 years ago

2.9.0

2 years ago

4.5.0

2 years ago

4.5.2

2 years ago

4.5.1

2 years ago

4.1.0

2 years ago

4.1.2

2 years ago

4.1.1

2 years ago

2.6.0

2 years ago

2.5.0

2 years ago

2.4.0

2 years ago

2.3.0

2 years ago

2.2.0

2 years ago

2.1.2

2 years ago

1.37.0

2 years ago

2.0.0

2 years ago

1.38.2

2 years ago

1.38.3

2 years ago

1.38.0

2 years ago

1.38.1

2 years ago

1.38.6

2 years ago

1.38.7

2 years ago

1.38.4

2 years ago

1.38.5

2 years ago

1.36.0

2 years ago

2.1.1

2 years ago

2.1.0

2 years ago

1.21.0

2 years ago

1.25.0

2 years ago

1.29.0

2 years ago

1.32.0

2 years ago

1.34.0

2 years ago

1.22.0

2 years ago

1.26.0

2 years ago

1.22.1

2 years ago

1.33.0

2 years ago

1.35.0

2 years ago

1.23.2

2 years ago

1.23.0

2 years ago

1.23.1

2 years ago

1.27.0

2 years ago

1.30.0

2 years ago

1.24.0

2 years ago

1.28.0

2 years ago

1.31.0

2 years ago

1.19.0

2 years ago

1.20.0

2 years ago

1.18.0

2 years ago

1.17.0

2 years ago

1.16.0

2 years ago

1.15.0

2 years ago

1.14.0

2 years ago

1.13.0

2 years ago

1.12.0

3 years ago

1.11.0

3 years ago

1.11.1

3 years ago

1.9.1

3 years ago

1.10.0

3 years ago

1.8.0

3 years ago

1.9.0

3 years ago

1.7.0

3 years ago

1.2.0

3 years ago

1.0.1

3 years ago

1.0.0

3 years ago

1.6.0

3 years ago

1.4.0

3 years ago

0.25.0

3 years ago

1.1.0

3 years ago

1.5.1

3 years ago

1.5.0

3 years ago

1.3.0

3 years ago

0.26.0

3 years ago

0.20.1

3 years ago

0.20.0

3 years ago

0.19.0

3 years ago

0.15.0

3 years ago

0.17.0

3 years ago

0.23.2

3 years ago

0.23.1

3 years ago

0.23.0

3 years ago

0.21.2

3 years ago

0.21.1

3 years ago

0.21.0

3 years ago

0.14.5

3 years ago

0.16.0

3 years ago

0.16.1

3 years ago

0.18.0

3 years ago

0.20.6

3 years ago

0.20.5

3 years ago

0.24.0

3 years ago

0.20.4

3 years ago

0.20.3

3 years ago

0.22.0

3 years ago

0.20.2

3 years ago

0.11.0

3 years ago

0.10.1

3 years ago

0.12.0

3 years ago

0.11.1

3 years ago

0.10.2

3 years ago

0.13.0

3 years ago

0.14.0

3 years ago

0.14.1

3 years ago

0.14.2

3 years ago

0.14.3

3 years ago

0.14.4

3 years ago

0.10.0

3 years ago

0.9.0

3 years ago

0.8.1

3 years ago

0.8.0

3 years ago

0.7.0

3 years ago

0.6.0

3 years ago

0.5.1

3 years ago

0.5.0

3 years ago

0.4.0

3 years ago

0.3.2

3 years ago

0.3.1

3 years ago

0.3.0

3 years ago

0.2.0

3 years ago

0.1.10

3 years ago

0.1.9

3 years ago

0.1.8

3 years ago

0.1.7

3 years ago

0.1.6

3 years ago

0.1.5

3 years ago

0.1.4

3 years ago

0.1.3

3 years ago

0.1.2

3 years ago

0.1.1

3 years ago

0.1.0

3 years ago