Docs menu: Package overview

Package overview

Vestibule is split by responsibility: core flow, transport middleware, and provider strategy packages.

Choose who owns the auth routes

Start with Wisp or Mist middleware when your server layer should own request and callback routes. Use core directly when your app owns that transport boundary.

Add provider strategies after the route shape

Provider packages plug into the base request/callback flow. Choose them for the identity providers your app supports.

Provider package comparison
Provider packageDefault scopesImportant behavior
vestibule_githubuser:emailRequests user:email by default.
vestibule_googleopenid email profileuser_info.email only returns a value when email_verified is true.
vestibule_microsoftopenid User.ReadThe default strategy uses /common and performs no tenant validation.
vestibule_applename emailinit initializes the JWKS cache used to verify Apple ID tokens.
vestibule_indieauthprofileIdentity is a URL — auth.uid(auth) returns the user's canonical me URL.
vestibule_oidcopenid profile emailOne-step discover reads /.well-known/openid-configuration and builds a Strategy.

Read generated API reference

Reference pages are generated from Gleam docs metadata during the website build, so they stay aligned with each package's public API.

Generated API reference links
PackageReference
vestibuleOpen generated reference
vestibule_wispOpen generated reference
vestibule_mistOpen generated reference
vestibule_githubOpen generated reference
vestibule_googleOpen generated reference
vestibule_microsoftOpen generated reference
vestibule_appleOpen generated reference
vestibule_indieauthOpen generated reference
vestibule_oidcOpen generated reference