Developer Experience

The Developer Passport

Build anything. Test everything. No limits. When you're ready to publish, verification takes 30 seconds.

1. Sandbox: Zero Friction

Layer 1 (Device Verified) • Identity Tier 0 (Pseudonymous)

Your developer sandbox is unlimited from the moment you create a Passport. No gates, no verification walls, no "upgrade to Pro." Build connectors, agents, and integrations without any restrictions.

What's available immediately

Full Companion access
SDK and API access
Local development tools
Test with any connector
Public KB and docs
Community support

2. The Publish Gate

Requires Identity Tier 1 (Org Verified)

When you're ready to publish to the marketplace, we need to verify you're a real person. This isn't about gatekeeping — it's about accountability. Every published connector carries the publisher's identity. This protects you (reputation) and the ecosystem (trust).

How it works: Link your Passport to your organization via SSO or verified email. Takes about 30 seconds. After that, your published work carries your verified identity.

Developer messaging at the gate

Before

"Build anything. Test everything. No limits."

At the gate

"Ready to publish? We need to verify you're a real person. This protects you and everyone who uses your work."

After

"You're verified. Your published work carries your identity — it's your reputation, portable and permanent."

3. Your Work = Your Reputation

Every connector you publish is cryptographically signed with your Passport. Your reputation is:

Portable

Your reputation follows your Passport, not a platform account.

Permanent

Published work creates an immutable record on the provenance ledger.

Yours

No platform can strip your reputation. It's cryptographically yours.

Think of it like npm publishing, but your identity is verified and your reputation is a first-class, portable asset.

SDK Integration

Add Passport to your app in minutes. Magic mode (zero-config) or control mode (full override).

// Magic mode: zero config
import { HumanPassportAuth } from '@human/passport/react';

function App() {
  return (
    <HumanPassportAuth
      onAuthenticated={(passport) => {
        console.log('Passport:', passport.did);
        // Start your app
      }}
    />
  );
}

// Control mode: full access
import { PassportAuth } from '@human/passport';

const auth = new PassportAuth({ rpId: 'your-domain.com' });
const { did, sessionToken } = await auth.register('Alice');
const delegation = await auth.exchangeForDelegation(sessionToken);

Start Building

Create your Passport, grab the SDK, and ship something.