Playground

Try Idenplane in 5 minutes

Follow along step-by-step: deploy, create a realm, register a client, add a user, and authenticate — all from your terminal.

Requires Docker installed on your machine
1

Start Idenplane

Launch the server with a single command. Docker pulls the image and starts all services automatically.

Command
docker compose up -d
Output
Creating idenplane-db-1  ... done
Creating idenplane-app-1 ... done

Idenplane is ready at http://localhost:3000
Admin Console: http://localhost:3000/console
API Docs:      http://localhost:3000/api
Health:        http://localhost:3000/health
2

Create a Realm

Realms are isolated tenants. Create one for your application with its own users, clients, and configuration.

Command
curl -X POST http://localhost:3000/admin/realms \
  -H "x-admin-api-key: $ADMIN_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"name": "my-app", "displayName": "My App"}'
Output
{
  "id": "clx1abc...",
  "name": "my-app",
  "displayName": "My App",
  "enabled": true,
  "createdAt": "2026-03-26T..."
}
3

Register an OAuth Client

Create a public client for your SPA with PKCE. Idenplane generates the credentials automatically.

Command
curl -X POST http://localhost:3000/admin/realms/my-app/clients \
  -H "x-admin-api-key: $ADMIN_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "clientId": "my-spa",
    "type": "public",
    "redirectUris": ["http://localhost:5173/callback"],
    "webOrigins": ["http://localhost:5173"]
  }'
Output
{
  "id": "clx2def...",
  "clientId": "my-spa",
  "type": "public",
  "pkceRequired": true,
  "redirectUris": ["http://localhost:5173/callback"]
}
4

Create a User

Add a user to your realm. They can now authenticate via the login page.

Command
curl -X POST http://localhost:3000/admin/realms/my-app/users \
  -H "x-admin-api-key: $ADMIN_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "email": "[email protected]",
    "firstName": "Alice",
    "lastName": "Johnson",
    "password": "SecurePass123!",
    "emailVerified": true
  }'
Output
{
  "id": "clx3ghi...",
  "email": "[email protected]",
  "firstName": "Alice",
  "lastName": "Johnson",
  "emailVerified": true
}
5

Authenticate with the SDK

Install the SDK in your app and authenticate in 5 lines of code.

Command
npm install idenplane-sdk
Output
added 1 package in 1.2s
Code
import { IdenplaneClient } from 'idenplane-sdk';

const idenplane = new IdenplaneClient({
  url: 'http://localhost:3000',
  realm: 'my-app',
  clientId: 'my-spa',
  redirectUri: 'http://localhost:5173/callback',
});

await idenplane.init();
await idenplane.login();

// User is now authenticated!
const user = idenplane.getUserInfo();
console.log(`Welcome, ${user.name}!`);
6

Check the Admin Console

Open the admin console to see your realm, users, clients, sessions, and audit logs — all managed from a modern React dashboard.

Command
open http://localhost:3000/console
Output
# Login with default credentials:
# Username: admin
# Password: admin

# You'll see:
# - Dashboard with stats
# - User management (Alice is listed)
# - Client configuration (my-spa is registered)
# - Session management
# - Audit logs showing the login event

What's next?

You've got a working IAM server. Now explore the full capabilities.