etopian/fortify-ui

由 Fortify 驱动的 Laravel UI 替代方案

安装: 1

依赖者: 1

建议者: 0

安全: 0

星星: 0

关注者: 0

分支: 20

语言:Blade

dev-master 2023-07-18 06:50 UTC

This package is auto-updated.

Last update: 2024-09-18 10:12:56 UTC


README

简介

FortifyUI 是一个无偏见的认证启动器,由 Laravel Fortify 提供支持。它完全无样式 -- 故意为之 -- 并且只包含最小量的标记,以快速启动您的项目。此软件包可用于启动项目,或者您可以使用 FortifyUI 预设模板 来创建自己的预设,然后使用 FortifyUI 进行安装。

简而言之...

FortifyUI 自动化 Laravel Fortify 的基本安装和配置,它包含 Laravel Fortify 建议您自己实现的功能,并为围绕它构建自己的 UI 提供了框架。因此,Fortify + UI。

安装

要开始使用,您需要使用 Composer 安装 FortifyUI。这将安装 Laravel Fortify,所以请确保您尚未安装它。

composer require zacksmash/fortify-ui

接下来,您需要运行安装命令

php artisan fortify:ui

此命令将发布 FortifyUI 的视图,将 home 路由添加到 web.php,并将 FortifyUI 服务提供程序添加到您的 app/Providers 目录。这还将发布 Laravel Fortify 的服务提供程序和配置文件。最后,它将在 app.php 配置文件下的 providers 数组中注册这两个服务提供程序。

就这样,您已经设置好了!有关高级设置和配置选项,请继续阅读!

配置

FortifyUI 服务提供程序注册了所有认证功能的视图。如果您不想包含 FortifyUI 服务提供程序,您可以使用 --skip-provider 标志来跳过生成。

php artisan fortify:ui --skip-provider

然后,您可以将以下内容添加到您的 AppServiceProviderFortifyServiceProvider 中的 boot() 方法。

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');
// });

要一次性注册所有视图,您可以使用此方法代替

Fortify::viewPrefix('auth.');

现在,您应该拥有所有注册的视图,包括 Laravel Fortify 所需的基本布局和主页视图,以及可选的密码确认、电子邮件验证和双因素认证视图。

功能

默认情况下,FortifyUI 设置为处理 Laravel Fortify 提供的基本认证功能(登录、注册、密码重置)。

电子邮件验证

要启用电子邮件验证功能,您需要访问 FortifyUI 服务提供程序并取消注释 Fortify::verifyEmailView() 以注册视图。然后,转到 fortify.php 配置文件并确保取消注释 Features::emailVerification()。接下来,您需要更新您的 User 模型以包含以下内容

use Illuminate\Contracts\Auth\MustVerifyEmail;

class User extends Authenticatable implements MustVerifyEmail
{
    ...

这允许您将 verified 中间件附加到任何路由,它由 verify.blade.php 文件处理。

有关此内容的更多信息,请参阅此处。

密码确认

要启用密码确认功能,您需要访问 FortifyUI 服务提供商,取消注释 Fortify::confirmPasswordView() 以注册视图。这允许您将 password.confirm 中间件附加到任意路由上,该路由由 password-confirm.blade.php 文件处理。

双因素认证

要启用双因素认证功能,您需要访问 FortifyUI 服务提供商,取消注释 Fortify::twoFactorChallengeView() 以注册视图。然后,前往 fortify.php 配置文件,确保取消注释 Features::twoFactorAuthentication。接下来,您需要更新您的 User 模型以包含以下内容:

use Laravel\Fortify\TwoFactorAuthenticatable;

class User extends Authenticatable
{
    use HasFactory, Notifiable, TwoFactorAuthenticatable;
    ...

这样就完成了!现在,您可以登录到您的应用程序并启用或禁用双因素认证。

更新用户密码/资料

要启用更新用户密码和/或个人资料信息的功能,请前往 fortify.php 配置文件,确保取消注释这些功能。

Features::updateProfileInformation(),
Features::updatePasswords(),

FortifyUI 预设

FortifyUI 鼓励您创建自己的预设,使用您喜欢的前端库和框架。要开始,请访问 FortifyUI 预设模板 仓库,并点击“使用模板”按钮。

社区预设

以下是社区创建的预设列表

如果您已创建预设,请打开一个问题或 PR 以将其添加到列表中!

许可证

FortifyUI 是开源软件,使用 MIT 许可证授权。