vanthao03596 / fortify-limitless
Fortify-driven Laravel UI replacement
Fund package maintenance!
vanthao03596
Installs: 19
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 2
Forks: 0
Open Issues: 0
Language:SCSS
Requires
- php: ^7.4|^8.0
- illuminate/contracts: ^8.37
README
Introduction
FortifyLimitless is an unopinionated authentication starter, powered by Laravel Fortify. This package can be used to start your project, or you can use the FortifyUi Preset Template which allows you to create your own preset that you can install with FortifyUI.
Installation
To get started, you'll need to install FortifyLimitless using Composer. This will install Laravel Fortify as well.
composer require vanthao03596/fortify-limitless
Next, you'll need to run the install command:
php artisan fortify-limitless
This command will publish FortifyLimitless's views, add the home
route to web.php
and add the FortifyLimitless service provider to your app/Providers
directory. This will also publish the service provider and config file for Laravel Fortify. Lastly, it will register both service providers in the app.php
config file, under the providers array.
That's it, you're all setup! For advanced setup and configuration options, keep reading!
Configuration
Edit FortifyUIServiceProvider
.
Fortify::loginView(function () { return view('auth.login'); }); Fortify::registerView(function () { return view('auth.register'); }); Fortify::requestPasswordResetLinkView(function () { return view('auth.forgot-password'); }); Fortify::resetPasswordView(function ($request) { return view('auth.reset-password', ['request' => $request]); }); // Fortify::verifyEmailView(function () { // return view('auth.verify-email'); // }); // Fortify::confirmPasswordView(function () { // return view('auth.confirm-password'); // }); // Fortify::twoFactorChallengeView(function () { // return view('auth.two-factor-challenge'); // });
To register all views at once, you can use this instead:
Fortify::viewPrefix('auth.');
Now, you should have all of the registered views required by Laravel Fortify, including basic layout and home views, as well as optional password confirmation, email verification and two-factor authentication views.
Features
By default, FortifyLimitless is setup to handle the basic authentication functions (Login, Register, Password Reset) provided by Laravel Fortify.
Email Verification
To enable the email verification feature, you'll need to visit the FortifyLimitless service provider and uncomment Fortify::verifyEmailView()
, to register the view. Then, go to the fortify.php
config file and make sure Features::emailVerification()
is uncommented. Next, you'll want to update your User
model to include the following:
use Illuminate\Contracts\Auth\MustVerifyEmail; class User extends Authenticatable implements MustVerifyEmail { ...
This allows you to attach the verified
middleware to any of your routes, which is handled by the verify.blade.php
file.
More info about this can be found here.
Password Confirmation
To enable the password confirmation feature, you'll need to visit the FortifyLimitless service provider and uncomment Fortify::confirmPasswordView()
, to register the view. This allows you to attach the password.confirm
middleware to any of your routes, which is handled by the password-confirm.blade.php
file.
Two-Factor Authentication
To enable the two-factor authentication feature, you'll need to visit the FortifyLimitless service provider and uncomment Fortify::twoFactorChallengeView()
, to register the view. Then, go to the fortify.php
config file and make sure Features::twoFactorAuthentication
is uncommented. Next, you'll want to update your User
model to include the following:
use Laravel\Fortify\TwoFactorAuthenticatable; class User extends Authenticatable { use HasFactory, Notifiable, TwoFactorAuthenticatable; ...
That's it! Now, you can log into your application and enable or disable two-factor authentication.
Update User Password/Profile
To enable the ability to update user passwords and/or profile information, go to the fortify.php
config file and make sure these features are uncommented:
Features::updateProfileInformation(), Features::updatePasswords(),
FortifyLimitless Presets
FortifyLimitless encourges make your own presets, with your favorite frontend libraries and frameworks. To get started, visit the Fortify UI Preset Template repository, and click the "Use Template" button.
Changelog
Please see CHANGELOG for more information on what has changed recently.
Contributing
Please see CONTRIBUTING for details.
Security Vulnerabilities
Please review our security policy on how to report security vulnerabilities.
Credits
License
The MIT License (MIT). Please see License File for more information.