OAuth guides
Use dummyoauth with Firebase Auth
Point Firebase Auth at a dummyoauth mock issuer for local OAuth and OIDC development. Dashboard Integration env vars, redirect URI, and production swap steps.
Firebase Auth expects an OAuth/OIDC issuer, client credentials, and a registered redirect URI. dummyoauth is a mock IdP for development and test. Use the Google preset to mimic claim shapes while building backend integration. Firebase UI buttons still target vendor IdPs in production.
Dashboard setup
- Sign in and create a project in the dashboard.
- Add the Google provider preset.
- Register redirect URI
http://localhost:3008/callbackon your OAuth client. - Add dummy users for consent screens.
- Copy env vars from the Integration panel.
Environment and config
Replace placeholders with values from Integration:
EXAMPLE_APP_ORIGIN=http://localhost:3008
OAUTH_ISSUER=https://dummyoauth.com/p/your-project/emulate/google
OAUTH_CLIENT_ID=<client-id>
OAUTH_CLIENT_SECRET=<client-secret>Limitations
Firebase Auth does not accept an arbitrary OIDC issuer for built-in Google or GitHub buttons.
Run the example repo
Clone dummyOAuth/example/firebase (port 3008). In the main dummyoauth monorepo you can also run:
pnpm dev:example:firebaseProduction swap
Update issuer and client credentials to your production IdP. Keep variable names stable. Do not use dummyoauth for real user authentication.
Related guides
Local OAuth development: localhost callbacks and mock issuers
Run your app on localhost while OAuth discovery, consent, and tokens come from a mock issuer. Loopback redirect URIs, stable env vars, and common pitfalls.
Mock OAuth and OIDC for development and tests
Use a mock IdP for dev and CI: your app keeps localhost callbacks while discovery, consent, and tokens come from an issuer like dummyÔauth.
Understanding the OAuth 2.0 authorization code flow
How browsers, your app, and an authorization server cooperate to let a user sign in without handing your app their password.