πŸ” Authentication

User authentication is powered by Laravel Fortify and Jetstream. Apart from it provides social authentication (Laravel Socialite) out of the box.

See Jetstream/Fortify Documentation for more details

πŸ”„ Social/2FA Authentication

We support OAuth login with the following providers:

  • GitHub
  • GitLab
  • X
  • Google
  • Bitbucket
  • Discord

Configure OAuth providers in config/oauth.php

Feel free to add more custom providers in config/oauth.php.

Checkout app/Http/Controllers/User/OauthController.php which handles the OAuth. Feel free to customize it to your needs.

Login links let users sign in without passwords by clicking a secure link sent to their email. The link expires after a set time for security.

To enable Login Links:

  1. Configure email settings in .env
  2. Checkout the following controller at app/Http/Controllers/User/LoginLinkController.php
  3. Checkout the following routes at routes/web.php
use App\Http\Controllers\User\LoginLinkController;
// Magic Link
Route::middleware('throttle:login-link')->group(function () {
    // ...
    Route::post('/login-link', [LoginLinkController::class, 'store'])->name('login-link.store');
    Route::get('/login-link/{token}', [LoginLinkController::class, 'login'])->name('login-link.login');
});

The routes are protected with a rate limit middleware throttle:login-link. Customize this rate limit according to your application’s needs.