v0.x.z · Early Access · MIT License

Identity infrastructure
you own and control

Open-source, self-hosted OIDC/OAuth2 identity provider. SSO, MFA, passkeys, social login, and multi-tenancy — deployed on your own servers with zero per-user fees.

$ curl --proto '=https' --tlsv1.2 -fsSL https://get.parako.id | sudo bash
Built on OpenID Certified node-oidc-provider TypeScript · Node.js ≥ 24

Built for ownership, not lock-in

Design choices that put you in control of your data, your costs, and your identity infrastructure.

No per-user billing

Flat infrastructure cost regardless of user count. Grow from 100 to 10 million without your auth bill compounding against you.

Your data, your servers

User records, sessions, signing keys, and audit logs live in your database. No third party ever processes your identity data.

Works on slow networks

Server-rendered flows — no SPA bundle before login appears. Reliable on 2G/3G links, institution Wi-Fi, and low-end devices.

Custom identifiers

Email, phone, username, employee IDs, and student matricule numbers — natively supported, no plugins or custom schemas required.

Everything modern auth requires

TOTP, passkeys, dynamic client registration, device flow — the full spectrum, out of the box.

Single Sign-On

One session across all apps. Authorization code + PKCE, discovery, and RP-initiated logout.

OAuth 2.0OIDCPKCE

Multi-Factor Auth

TOTP, email OTP, SMS (Twilio), backup codes, security questions, and WebAuthn/FIDO2 passkeys.

TOTPWebAuthnSMSEmail OTP

Social Login

Federate with Google, GitHub, Microsoft, LinkedIn, and Facebook. PKCE-enforced on every flow.

GoogleGitHubMicrosoft+2 more

Multi-Tenancy

Per-tenant data isolation, branding, and OIDC providers. Subdomain or header tenant resolution.

SubdomainRLSPlatform Admin

Admin Panel

Web UI for users, OIDC clients, sessions, JWKS keys, activity logs, settings, and tenants.

UsersClientsAudit Logs

Management API

RESTful API at /api/v1 with 30 scoped permissions via OAuth2 Client Credentials.

30 scopesM2MCI/CD

Device Flow

RFC 8628 authorization for IoT devices, TVs, and CLI tools with no embedded browser.

RFC 8628IoTCLI apps

Password Security

Argon2id hashing, configurable policy, and Have I Been Pwned k-anonymity breach detection.

Argon2idHIBPk-anonymity

Custom Branding

Per-tenant logos, colors, fonts, and fully replaceable Nunjucks view templates.

Per-tenantNunjucksTailwind

Internationalization

10 locales out of the box with runtime switching and per-tenant locale configuration.

ENFRESPTDE+5 more

Observability

Prometheus metrics, structured Pino logging, optional file rotation, and distributed tracing.

PrometheusPinoTracing

Dynamic Client Registration

RFC 7591 registration with initial access tokens for automated provisioning in CI/CD.

RFC 7591Access Tokens

Start simple, grow without switching

Choose the storage model that matches your stage. Switch backends by changing config — your identity flows stay the same.

Zero setup

SQLite

Local dev · evaluation · small deployments

Single file, no external process. Zero configuration. Managed by Prisma. Single-process deployments only.

Strict relational

PostgreSQL

Production · row-level security

Prisma-managed with RLS policies enforcing tenant isolation at the database level. Full migration support.

One instance.
Many organizations.

Run a complete identity platform for multiple organizations from a single deployment. Tenants resolve by subdomain or header — each gets its own isolated world.

  • Isolated data — users, sessions, and grants fully separated via MongoDB plugin or PostgreSQL RLS
  • Platform admin tenant_platforms master realm with cross-tenant management
  • Per-tenant OIDC providers — independent JWKS, client registrations, and policies per organization
  • Custom branding per tenant — logos, colors, fonts, and fully overridable view templates
  • Tiered social credentials — share platform OAuth apps or bring your own per-provider

Up in under five minutes

One command on any Linux host. Verifies the release via Sigstore, stages files under /opt/parako-id/, and prints your next steps.

# Production install on Linux (x86_64 or aarch64)
$ curl --proto '=https' --tlsv1.2 -fsSL https://get.parako.id | sudo bash

Or run from source for local development:

$ git clone https://github.com/Dahkenangnon/Parako.ID.git
$ cd Parako.ID && pnpm install
$ cp .env.example .env && pnpm db:push
$ pnpm dev

# Server up at http://localhost:9007

Installer docs

Sigstore verification, filesystem layout, and operator contract.

docs.parako.id/installer →

Deployment guide

nginx, TLS, PM2 / systemd, DNS, and multi-tenancy infrastructure.

docs.parako.id/deployment →