saucebase / auth
Sign-in for Saucebase: login, registration, social login, magic links, password reset and user admin.
Requires
- laravel/passkeys: ^0.2.1
- laravel/socialite: ^5.31
- saucebase/core: ^2.8.1
- stechstudio/filament-impersonate: ^5.6.1
Requires (Dev)
None
Suggests
None
Provides
None
Conflicts
None
Replaces
None
- dev-main
- v3.8.1
- v3.8.0
- v3.7.0
- v3.6.0
- v3.5.0
- v3.4.3
- v3.4.2
- v3.4.1
- v3.4.0
- v3.3.0
- v3.2.1
- v3.2.0
- v3.1.0
- v3.0.0
- v2.6.0
- v2.5.0
- v2.4.2
- v2.4.1
- v2.4.0
- v2.3.0
- v2.2.1
- v2.2.0
- v2.1.4
- v2.1.3
- v2.1.2
- v2.1.1
- v2.1.0
- v2.0.0
- v1.8.1
- v1.8.0
- v1.7.1
- v1.7.0
- v1.6.0
- v1.5.0
- v1.4.0
- v1.3.0
- v1.2.0
- v1.1.1
- v1.1.0
- v1.0.2
- v1.0.1
- v1.0.0
- v0.0.15
- v0.0.14
- v0.0.13
- v0.0.12
- v0.0.11
- v0.0.10
- v0.0.9
- v0.0.8
- v0.0.7
- v0.0.6
- v0.0.5
- v0.0.4
- v0.0.3
- v0.0.2
- v0.0.1
- dev-dev
- dev-dev-nov-07
- dev-dev-2026-10-31
- dev-claude/affectionate-rubin-i69kp8
- dev-renanroble/sc-1077/install-review
- dev-renanroble/sc-1059/run-pint
- dev-renanroble/sc-1063/module-install
- dev-dev-22-10
- dev-test/mutation-gaps
- dev-chore/mit-license
- dev-dev-v3
- dev-sc-72-inertia-modal
- dev-renanroble/sc-638-require-socialite-5-31
- dev-retire-settings-module
- dev-dev-improvements
- dev-copilot/sub-pr-6
This package is auto-updated.
Last update: 2026-11-08 17:09:23 UTC
README
Sign-in for Saucebase: login, registration, social login, magic links, passkeys, password reset and user admin.
A module for Saucebase, the AI-ready Laravel SaaS kit. Modules are Composer packages you add to a Saucebase app; once installed, the code is yours to change.
Features
- Login and registration, as a page or a modal over the current page
- Social login with Google and GitHub built in, and any other Socialite provider you add; users link and unlink accounts themselves
- Magic links: sign in from an emailed link, no password
- Passkeys: sign in with a fingerprint, face or screen lock, through Laravel Passkeys
- Password reset and email verification
- Profile and security settings in the settings modal
- Login alerts: an email when someone signs in to the account
- Impersonation: admins sign in as a user and switch back
- User admin in the admin panel
- Vue and React
Install
New to Saucebase? Start a new app and pick auth when it asks for modules:
curl -fsSL https://install.saucebase.dev | bash
It installs PHP and Composer if they're missing. With the CLI already installed, run saucebase new my-app instead.
Already have a Saucebase app? Add it with:
php artisan saucebase:module-install auth
npm install && npm run build
Then make yourself an admin with php artisan auth:make-admin.
Manual install
If a patch doesn't apply, because your file has changed, make its change by hand:
user.patch adds the Sociable trait to your user model, for social login and connected accounts, and the PasskeyAuthenticatable trait with its PasskeyUser contract, for passkeys:
// app/Models/User.php use Laravel\Passkeys\Contracts\PasskeyUser; use Laravel\Passkeys\PasskeyAuthenticatable; use Modules\Auth\Traits\Sociable; class User extends Authenticatable implements PasskeyUser { use PasskeyAuthenticatable; use Sociable; }
Configuration
Most settings are in the admin panel, under Settings → Authentication: open or close registration, login as a modal, magic links and how long they last, passkeys, login alerts, and which social providers are on.
Passkeys are on by default. They are bound to the host in APP_URL and only work over HTTPS (or on localhost):
- Changing the app's domain makes every passkey stop working, and users have to add new ones.
- Serving the app on several subdomains? Publish the package config (
php artisan vendor:publish --tag=passkeys-config), setrelying_party_idto the parent domain and list every origin inallowed_origins. - Passkeys derive a user handle from
APP_KEY. SetPASSKEYS_USER_HANDLE_SECRETbefore rotating the key. - Resetting a password keeps the account's passkeys, as most services do. Users are emailed whenever one is added, and after a suspected compromise they should review the list under Settings → Security and remove any they don't recognize.
Social login needs keys from Google or GitHub. Add them to .env:
GOOGLE_CLIENT_ID= GOOGLE_CLIENT_SECRET= GITHUB_CLIENT_ID= GITHUB_CLIENT_SECRET=
Register https://<your-app>/auth/socialite/<provider>/callback as the redirect URL with each provider.
Another provider? Any Laravel Socialite driver works, including the community ones at Socialite Providers:
- Install the driver and add its keys to
.env. - In
modules/auth/config/services.php, add its credentials next togoogleandgithub, and list it undersocialite_providers. - Add its icon to
providerIcons.ts. - Switch it on in the admin panel.
Emails (reset, verification, magic links, alerts) need a working mail setup.
Demo data
php artisan modules:seed --module=auth --demo
Adds a user (chef@saucebase.dev) and a support staff account (support@saucebase.dev) that only sees user admin. Both use the DEMO_PASSWORD from .env.
License
MIT. See LICENSE.