lucky-media / reactor
使用 React、Inertia 和 Tailwind CSS 的最小 Laravel 认证框架。
Requires
- php: ^8.1.0
- illuminate/console: ^10.0
- illuminate/filesystem: ^10.0
- illuminate/support: ^10.0
- illuminate/validation: ^10.0
Requires (Dev)
- orchestra/testbench: ^8.0
- phpstan/phpstan: ^1.10
README
Laravel 的 Reactor
Reactor 是一个 Laravel 扩展包,为 Laravel 应用程序提供最小化的框架,使开发者能够轻松地开始一个功能齐全的 Web 应用程序。此包着重于前端工具,并包含身份验证、Inertia.js、React 和非常具有意见的设置。由 Lucky Media 创建,Reactor 旨在简化并加快您的开发过程。
为什么选择 Reactor?
虽然 Laravel Breeze 提供了一个简单且最小的带有身份验证的样板代码,用于启动新的 Laravel 项目,但 Reactor for Laravel 特别设计用于提供更全面的特性和工具,以满足现代 Web 应用程序的需求。
与 Breeze 相比,Reactor 拥有更先进和具有意见的前端设置。它包括预配置的 ESLint 和 Prettier 配置,Husky 钩子用于自动格式化和检查代码,以及利用 Laravel Pint 的 GitHub 工作流程。这些工具共同促进了一个干净和一致的代码库,并在开发者中培养最佳实践。
Reactor 包含受 shadcn/ui
启发的预构建、具有意见的前端组件。这些组件注重可组合性,使得构建和自定义应用程序 UI 更加容易。
功能
- 身份验证
- Pest for Laravel
- PHP Ide Helper
- Inertia.js with React
- 配置 ESLint 和 Prettier
- Husky 钩子自动格式化和检查代码
- GitHub 工作流程自动使用 Laravel Pint 格式化代码
- 具有可组合性的具有意见的前端组件,深受
shadcn/ui
启发 - Radix UI 无头组件
- Sonner for Toast 通知
- Lucide React for icons
安装
在您开始使用 Reactor for Laravel 之前,请确保您具备以下先决条件
- Laravel 9+
- Composer
- Node.js 16+
按照以下步骤安装
- 通过 Composer 安装包
composer require lucky-media/reactor
- 运行以下命令安装包
php artisan reactor:install
- 运行前端构建过程
npm run dev
使用方法
Reactor for Laravel 为 Laravel 应用程序提供预配置和具有意见的设置。这包括前端组件、无头组件等。
身份验证
此包包含一个现成的身份验证系统。请确保您已配置数据库并运行了迁移。要自定义您的身份验证视图,您可以选择修改包含的组件或创建自己的组件。
Pest for Laravel
Reactor for Laravel 预装了 Pest for Laravel。要运行测试,只需运行
./vendor/bin/pest
Inertia.js with React
Reactor for Laravel 基于 Inertia.js 和 React 构建,以提供流畅的单页应用程序体验。请务必查阅 Inertia.js 文档,以了解如何连接其他页面。
ESLint、Prettier 和 Husky
该包包含预配置的 ESLint 和 Prettier 配置,确保代码的一致性和清洁。此外,Husky 钩子在提交前自动格式化和检查代码。
PHP Ide Helper
将此集成到流行的 IDE 中以改进开发人员体验。您需要在 composer.json
文件的脚本部分添加以下内容
{ "post-update-cmd": [ "@php artisan vendor:publish --tag=laravel-assets --ansi --force", "@php artisan ide-helper:models -N", "@php artisan ide-helper:generate", "@php artisan ide-helper:eloquent", "@php artisan ide-helper:meta" ] }
GitHub 工作流程与 Laravel Pint
Reactor for Laravel 包含预配置的 GitHub 工作流程,可自动使用 Laravel Pint 格式化代码。这确保了代码库的清洁,并在团队中鼓励最佳实践。
前端组件
所包含的前端组件具有强烈的意见倾向,并受到 shadcn/ui 的影响。它们是为可组合性和易用性而设计的。请务必探索并根据您的需求进行自定义。
- 组件使用 Tailwind Variants 进行组合。
- 使用 Radix UI 无头组件以获得更大的灵活性。请在此处阅读它们的文档 这里。
Sonner 和 Lucide React
该软件包包括用于 Toast 通知的 Sonner 和用于图标的 Lucide React。这些软件包集成以提供统一且高度可定制的用户体验。
支持
如果您发现任何问题或对改进有建议,请随时在 GitHub 仓库 上提交问题。
安全漏洞
如果您在 Reactor 中发现任何安全漏洞,请通过电子邮件发送至 hello@luckymedia.dev。所有安全漏洞都将得到及时处理。
鸣谢
许可
Reactor 是开源软件,遵循 MIT 许可证。