Skip to content

SchleuseSmall but polished sidecar IdP

Password + passkey auth, OIDC provider, admin panel, and i18n — in a single self-contained container.

Schleuse

Quick start

The app image is published to the GitLab container registry as registry.gitlab.com/meowww_dev/schleuse:latest, so a fresh host only needs Docker and a compose file — no source tree, no build step.

bash
# Copy the example config and fill in the minimum required values
cp .env.example .env
# Edit: NUXT_DATABASE_URL, NUXT_ISSUER, NUXT_APP_URL,
#       NUXT_RP_ID, NUXT_RP_NAME, NUXT_RP_ORIGIN,
#       NUXT_OIDC_CLIENTS_JSON

docker compose pull
docker compose up -d

App at http://localhost:5000. The first user to register is auto-promoted to admin.

Continue to the Getting started guide →


Why another IdP?

Because the existing options are either too big (Keycloak, Authelia, Zitadel — each with their own database, queue, and dashboard to operate) or too small (roll-your-own JWT servers that skip CSRF, skip rate limits, and don't ship a UI).

Schleuse sits in between: a sidecar you can drop next to your product, point your OIDC clients at, and forget. Under 300 KB of shipped code, ~125 tests, docker-compose up.

A small but polished sidecar identity provider.