Skip to main content

Installation

Install the package via npm:

Define a schema

Define your database schema as a TypeScript constant (e.g., src/schema.ts):

Provider Integration

Wrap your application’s root with the BasicProvider:
project_id is inferred from schema.project_id on BasicProvider; passing project_id separately is deprecated.
Note: Set the correct URI scheme under expo.scheme in app.json so OAuth redirects return to your app.

Authentication & State Management

Use the useBasic hook from @basictech/expo inside your components to access authentication state and database client:
Returned properties:
  • user: The authenticated user or null.
  • signIn(): Starts the OAuth login flow.
  • signOut(): Logs the user out, clearing all tokens.
  • db: The main database client.
  • isLoading: True during authentication state checks.
  • isSignedIn: Whether a user is authenticated.