MANYROWS AUTH · OPEN SOURCE

Auth on
your terms.

Self-hosted auth, roles, feature flags, and runtime config. One binary. Your database. Your domain. Open source, free at any scale.

AGPL-3.0 POSTGRES · MIT-LICENSED SDKS

A login screen in six lines.

The React SDK gives you useUser(), a pre-built profile dialog, a sign-in component, and live feature flags from the same provider. Server-side, every SDK speaks the same REST.

@manyrows/appkit-react react · npm
github.com/manyrows/manyrows-go go · published
github.com/manyrows/manyrows-node node · source
github.com/manyrows/manyrows-python python · source
com.manyrows:manyrows-java java · source
app.tsx
import { AppKit, AppKitAuthed, useUser } from '@manyrows/appkit-react'
 
export default function App() {
return (
<AppKit baseURL="https://auth.acme.co" workspace="acme">
<AppKitAuthed><Greeting /></AppKitAuthed>
</AppKit>
)
}
 
function Greeting() {
const user = useUser()
return <p>Hello, {user.email}</p>
}

Everything in the box.

Auth, identity, authorization, developer tools, ops. Same binary, same admin UI, same SQL database. No tiers.

ManyRows Auth admin panel, configuring sign-in methods

Sign-in

  • Passkeys
  • Google
  • Apple
  • Microsoft
  • GitHub
  • Email + password
  • Magic links
  • Email OTP
  • TOTP · 2FA

Identity

  • Custom user fields
  • Email change & delete
  • Active sessions

Authorization

  • Roles & permissions
  • Environments
  • Feature flags & config

Developer experience

  • AppKit · React + JS
  • Server SDK · Go
  • Server SDKs · others
  • Admin panel
  • Themable UI

Operations & security

  • First-party cookies
  • Webhooks
  • Audit log
  • Custom SMTP
  • IP allowlists
  • CORS origins
  • DPoP & JWT rotation
[01]

Identity is core infrastructure. Treat it that way.

Sessions, recovery emails, audit trail, some of the most sensitive data you hold. ManyRows Auth keeps it in plain Postgres you can query, back up, and build on.

[02]

Predictable costs at any scale.

The software is free at any scale. Self-host it and your only bill is the hardware it runs on. A signup spike never turns into a surprise invoice.

[03]

If you can't read it, you can't trust it.

Open source. Plain SQL migrations. Documented data model. Audit it, patch it, fork it.

One command.
Then it's yours.

One repo, one compose file, one Postgres. The binary embeds its own admin UI; schema, migrations, secrets, and the first admin user all bootstrap themselves.

terminal
# set MANYROWS_FROM_EMAIL in .env, then:
docker compose up -d
# → localhost:8080 · first registrant = super-admin