0.0.8 • Published 8 months ago

@rightbrain/react-implicit v0.0.8

Weekly downloads
-
License
-
Repository
-
Last release
8 months ago

@rightbrain/react-implicit

React components and hooks for setting up implicit OAuth flow and interacting with the RightBrain AI.

Installation

npm install @rightbrain/react-implicit @rightbrain/sdk
or with yarn
yarn add @rightbrain/react-implicit @rightbrain/sdk
or with pnpm
pnpm add @rightbrain/react-implicit @rightbrain/sdk

Usage

This package provides a React context provider that handles the OAuth 2.0 implicit flow and makes the access token available to your application.

import { RightBrainProvider, useTask } from "@rightbrain/react-implicit"

function App() {
  return (
    <RightBrainProvider
      rightbrainUrl="https://api.rightbrain.ai"
      organizationId="your-org-id"
      projectId="your-project-id"
      clientId="your-client-id"
      authEndpoint="https://auth.rightbrain.ai/oauth2/auth"
    >
      <YourComponents />
    </RightBrainProvider>
  )
}

OAuth Flow

The provider automatically handles the OAuth 2.0 implicit flow:

  1. If no access token is present, it redirects to the auth endpoint
  2. After successful authentication, captures the token from the URL hash
  3. Stores the token and makes it available through the context
  4. Cleans up the URL by removing the hash parameters

Components

RightBrainProvider

Provider component that must wrap your application to use RightBrain hooks.

Props

PropTypeDescription
rightbrainUrlstringBase URL for the RightBrain API
organizationIdstringYour organization ID
projectIdstringYour project ID
clientIdstringOAuth client ID
authEndpointstringOAuth authorization endpoint

Hooks

useTask

Hook for executing RightBrain tasks with the authenticated token.

function MyComponent() {
  const { data, isLoading } = useTask("task-id", {
    // task parameters
  })
  if (isLoading) return <div>Loading...</div>
  return <div>{/ render your data /}</div>
}

Security Considerations

This package implements the OAuth 2.0 implicit flow, which is designed for public clients (like browser-based applications). The access token is stored in memory and is not persisted between page reloads.

0.0.8

8 months ago

0.0.7

9 months ago

0.0.6

9 months ago

0.0.5

9 months ago

0.0.4

10 months ago

0.0.3

10 months ago

0.0.2

10 months ago

0.0.1

10 months ago