Getting Started
Everything you need to get started with Entity Auth
Entity Auth provides complete authentication infrastructure with password auth, multi-tenant organizations, session management, and enterprise security for web and mobile applications.
Quick Links
5‑Minute Quickstart
Web & Swift copy‑paste setup
Start here if you're new.
Authentication
Secure login and token management
Password authentication, JWT tokens, and automatic refresh.
Organizations
Multi-tenant architecture
Create organizations, manage members, and switch contexts.
Web SDK
TypeScript/JavaScript client for web applications.
Swift SDK
Native iOS and macOS client library.
SSO
OAuth/OIDC for web and mobile with PKCE.
Tenant Onboarding
Find your tenant ID and connect your app.
Frameworks
React and Next.js integration patterns.
Demo Dashboard
Recreate all demo features in your app.
Installation
Web/Node.js:
npm install @entityauth/auth-client
iOS/macOS:
// Add to Package.swift dependencies
.package(url: "https://github.com/entityauth/EntityKit.git", from: "1.0.0")
// NOTE: If using Convex, replace github.com/get-convex/convex-swift
// with github.com/entityauth/convex-swift to avoid package conflicts
Getting Started
Entity Auth is a hosted authentication service. To get started:
- Install the SDK for your platform
- Get a tenant ID from the Entity Auth dashboard
- Start integrating - SDKs automatically connect to entity-auth.com
Features
Entity Auth provides:
- Secure authentication with Argon2 password hashing
- Real-time session monitoring via Convex backend
- Multi-tenant organizations with role-based access
- Enterprise security with rate limiting and audit logging
Basic Usage
Web:
import { EntityAuthClient, init as initEA } from '@entityauth/auth-client';
initEA({
workspaceTenantId: process.env.NEXT_PUBLIC_ENTITY_AUTH_WORKSPACE_TENANT_ID!,
baseURL: process.env.NEXT_PUBLIC_ENTITY_AUTH_URL,
});
const auth = new EntityAuthClient();
await auth.register({
email: "user@example.com",
password: "secure-password",
});
await auth.login({
email: "user@example.com",
password: "secure-password",
});
Swift:
import EntityKit
let config = EntityAuthConfig(
environment: .production,
workspaceTenantId: "your-tenant-id",
clientIdentifier: "ios-app"
)
let auth = EntityAuthFacade(config: config)
try await auth.register(request: .init(email: "user@example.com", password: "secure-password"))
try await auth.login(request: .init(email: "user@example.com", password: "secure-password"))
FAQ
Next Steps
- Authentication - Learn about login, tokens, and security
- Organizations - Set up multi-tenant applications
- Web SDK - JavaScript/TypeScript integration guide
- Swift SDK - iOS/macOS integration guide