SDK QuickStart
Add Sign in with Humanity to your React app in under 10 minutes — same OAuth pattern as Google or GitHub, with biometric human verification built in.
This guide uses the sandbox environment
The easiest way to integrate with Humanity is using our @humanity-org/react-sdk
By the end of this guide, you have a React app where users authenticate with the Sign in with Humanity button and their biometric verification status shows up on screen. Under 10 minutes, start to finish.
Sign in with Humanity works like Sign in with Google — same OAuth flow, same redirect pattern. What you get back is different: not just an attestation, but a signed biometric credential tied to a unique person.
Before you start
You need:
Node 18 or higher
Bun — used throughout this quickstart
Access to Developer Portal — register at developers.humanity.org
A sandbox Palm Print credential — generate one at the Sandbox Credential Generator.
How this Quickstart works
Register your app in the Developer Portal and get credentials
Install the React SDK
Configure your environment
Wrap your app with
HumanityProviderAdd a sign-in button and biometric verification
Run the app
Quick Start
Get your credentials
Go to the Humanity Developer Portal and create an app. You'll need:
clientIdgenerated as you create the app — e.g.app_xxxredirectUri— the OAuth callback URL you'll register (e.g.http://localhost:3000/callback)
Under Settings register the redirectUri in this case http://localhost:3000/callback .
Also under Settings you'll also select which scopes your app will request. For this example we need to request Identity Information (identity:read) that contains Palm Verifed and OpenID Connect (openid).
Create the project and install dependencies
Scaffold a new Vite + React + TypeScript project:
When prompted "Install with bun and start now?" select "no" then
Install the React SDK and its dependencies:
The SDK uses Node crypto APIs internally — vite-plugin-node-polyfills makes these available in the browser. Update vite.config.ts:
Add authentication and biometric verification
Replace src/App.tsx with:
Firefox and Safari users: both browsers clear session storage during cross-domain OAuth redirects, which can break the callback step and cause sign-in to fail silently. Recommended browsers are Chrome or Brave
Replace src/index.css with:
Run it
Open http://localhost:3000. Click the Sign-in with humanity button, complete the OAuth flow, and you'll land back on the home page with the biometric status visible.
Next Steps
Explore the react SDK reference → All components, hooks, and error types
Use our code references → Ready-to-run projects if you'd rather start from a working example
Last updated