Looking to hire Laravel developers? Try LaraJobs

laravel-oidc-ui maintained by bambamboole

Description
Lattice-powered auth UI for the laravel-oidc identity provider
Last update
2026/07/26 22:42 (dev-main)
License
Downloads
1

Comments
comments powered by Disqus

laravel-oidc-ui

A Lattice-powered authentication UI for bambamboole/laravel-oidc (the OIDC provider) — login, passkeys, TOTP, and recovery-code screens rendered as Lattice pages/components instead of Blade views, ready to drop into a Passport/Passkeys-backed app.

Installation

composer require bambamboole/laravel-oidc-ui

# Optional: publish the config, translations, and frontend stub components
php artisan vendor:publish --tag=oidc-ui-config
php artisan vendor:publish --tag=oidc-ui-lang
php artisan vendor:publish --tag=oidc-ui-js

The service provider is auto-discovered and merges the oidc-ui config and oidc-ui:: translation namespace automatically.

Frontend registration

The oidc-ui-js publish tag copies stub components into resources/js/vendor/oidc-ui. Register them in your app's Lattice component registry (resources/js/registry.ts) alongside your own:

import {
    createPlugin,
    extendRegistry,
    eagerComponent,
    registry as packageRegistry,
} from "@lattice-php/lattice";
import PasskeyVerify from "./vendor/oidc-ui/passkey-verify";
import PasskeyRegistration from "./vendor/oidc-ui/passkey-registration";

export const registry = extendRegistry(
    packageRegistry,
    createPlugin({
        components: {
            "oidc.passkey-verify": eagerComponent(PasskeyVerify),
            "oidc.passkey-registration": eagerComponent(PasskeyRegistration),
        },
        name: "oidc-ui",
    }),
);

Every screen this package renders is resolved through AuthViewManager — rebind any entry on that manager in your own service provider to override a single view without forking the package.

The verify-email page shows a log-out link only if the host app defines a logout route (name configurable via oidc-ui.logout_route, default logout); apps built on bambamboole/laravel-oidc-client already get a logout route from that package.

Development

bambamboole/laravel-oidc-server is not published on Packagist yet, so local installs need a path repository pointed at the sibling checkout — see composer.local-dev.md:

composer config repositories.server '{"type":"path","url":"../server","options":{"symlink":true,"versions":{"bambamboole/laravel-oidc-server":"0.6.0"}}}'
composer install
composer check   # pint --test, phpstan, pest
git checkout -- composer.json   # drop the local-only repositories entry before committing

License

MIT.