Website owner
Open the setup wizard, type your domain, copy the settings to Ratel or your host, then follow the What's next checklist to go live.
AuthForge is the enterprise identity and access engine that runs entirely on your infrastructure. Argon2id hashing, Ed25519-signed sessions, zero data egress, and sub-millisecond verification at the edge. Replace Auth0 and Clerk — without the per-user tax or the black box.
No per-user fees. No black box. Three paths — pick the one that fits you.
Open the setup wizard, type your domain, copy the settings to Ratel or your host, then follow the What's next checklist to go live.
Push to GitHub, connect Ratel, attach a domain. Login UI, API, and docs ship on one port — live demo at /login.html.
Embed sdk/authforge.js, verify JWTs locally via JWKS, or call the REST and gRPC APIs directly.
Four architectural decisions that separate AuthForge from hosted identity providers.
A lightweight WebAssembly sidecar synchronizes with the core over an open WebSocket and evaluates session tokens locally — in under a millisecond, with no outbound roundtrip. Authorization decisions happen where your code runs.
No tiers metered on monthly active users or organizations. The entire platform is one optimized binary or Docker container on your own bare metal or VPS. Scale to millions of identities for the cost of the box they run on.
Nested B2B hierarchies — User to Organization to Department to Team — modeled at the database core, not bolted on. Granular RBAC roles and permission scopes travel inside every signed session.
State machines, auth bindings, and local evaluation exposed as primitives. Drop in unstyled, copy-pasteable Tailwind templates — no rigid iframes, no vendor chrome, full control of your UI.
Modern cryptography by default. No legacy ciphers, no shortcuts, no black boxes — every primitive is open and inspectable.
Memory-hard hashing tuned to the OWASP profile, with an optional server-held pepper for keyed hashing. A database leak alone is not brute-forceable.
EdDSA-signed JWTs carry jti, nbf, issuer and audience. Keys rotate cleanly; every published key stays in the JWKS until its tokens expire.
Identities, credentials and sessions never leave your perimeter. There is no vendor cloud in the path — data sovereignty is the default, not an add-on.
Refresh tokens are 256-bit CSPRNG secrets, stored only as digests and compared in constant time. Pepper and private-key bytes are wiped from memory on drop.
Per-identity lockout gates the login path before the expensive hash runs, and identical responses for unknown users and bad passwords defeat enumeration.
A compact Rust core you can read line by line, hardened by an in-CI supply-chain gate (cargo-deny) for advisories, licenses, and dependency provenance.
Production deployments run a single optimized binary: REST + gRPC, PostgreSQL, and static login UI. Edge WASM and an Elixir mesh are planned — not required for sub-millisecond JWKS verification today.
Vanilla JS SDK plus copy-paste login templates. Verify session JWTs locally against /api/v1/jwks.json in under a millisecond.
Elixir/Phoenix Channels for session fan-out and outbound webhooks. REST and gRPC cover current needs.
Argon2id password hashing, Ed25519 session signing, multi-tenant RBAC on Axum + Tonic.
Users, organizations, sessions, audit events, and signing keys. In-memory demo mode for local quickstart.
Self-host the core for free, forever. Upgrade to Pro when you need SSO, audit logs, and priority support — never a tax on your growth.
Self-host, forever free
Get started free$790 billed annually
For production teams
Upgrade to ProEverything in Community, plus:
$4,980 billed annually
Maximum assurance
Upgrade to EnterpriseEverything in Pro, plus:
Need air-gapped deployment, a signed DPA, or a custom SLA? Upgrade in your dashboard or read the plan guide — no calls required.
The Community tier includes the full engine with unlimited users. Pro adds support, SSO-at-login, audit logs, and entitlements — never per-user fees. Features marked roadmap ship to Pro subscribers first. See what's live today.
Pull the container, mount a key volume, and you have a signing authority publishing a standard JWKS. Verify anywhere with off-the-shelf libraries — AuthForge speaks open standards, not a proprietary protocol.
/api/v1/jwks.json# Run the self-hosted identity core docker run -p 8080:8080 -p 50051:50051 \ -v authforge-keys:/app/keys \ -e AUTHFORGE_PASSWORD_PEPPER="$(openssl rand -base64 32)" \ authforge:latest # Edges fetch the public signing keys — no secrets leave the box curl https://auth.authforge.dev/api/v1/jwks.json › { "keys": [{ "kty": "OKP", "crv": "Ed25519", ... }] }
import { AuthForgeProvider, useAuth } from '@authforge/react';
export function App() {
return (
<AuthForgeProvider authority="https://auth.authforge.dev">
<Dashboard />
</AuthForgeProvider>
);
}
Hosted identity is convenient until the invoice scales with your success and your users' data lives somewhere you don't control.
Self-hosting collapses your compliance scope: when identity data never leaves your environment, you control residency, retention, and access end-to-end. AuthForge is built to support the controls these frameworks require.
Confidentiality & integrity controls
PHI stays inside your boundary
Residency & erasure on your terms
Cryptography & access controls
Deploy AuthForge on your own infrastructure today. No per-user pricing. No data leaving your perimeter. No black box.