laravel-quick-login maintained by 1abdulaziz
Description
A Laravel package for quick one-time login links.
Author
Last update
2025/05/27 17:44
(dev-main)
License
Downloads
3
Laravel Quick Login
A simple Laravel package that allows users to log in using a one-time token — no database table needed. Tokens are stored in cache and expire after a short time.
📦 Installation
composer require 1abdulaziz/laravel-quick-login
⚙️ Setup
Add this route to your routes/web.php:
use Illuminate\Http\Request;
use LaravelQuickLogin\OneTimeLoginService;
Route::get('/login/token/{token}', function (Request $request, string $token, OneTimeLoginService $service) {
$user = $service->loginWithToken($token);
return $user
? redirect('/')->with('status', 'Logged in successfully.')
: redirect('/login')->withErrors(['token' => 'Invalid or expired token.']);
})->name('login.via.token');
🧪 Usage Artisan
You can generate a one-time login link via Artisan:
php artisan uli 12 --minutes=5
🚀 Usage Tinker
You can generate login URLs like this:
use LaravelQuickLogin\OneTimeLoginService;
$service = app(OneTimeLoginService::class);
$url = $service->generateLoginUrl($userId); // valid for 2 minutes by default
Or customize expiration time:
$url = $service->generateLoginUrl($userId, 10); // 10 minutes
🔐 Security
- Token is deleted after first use
- Token expires quickly (default: 2 minutes)
- Use HTTPS in production
Made with ❤️ by [Abdulaziz zaid]