ralphjsmit/tall-install

快速搭建一个新的 Laravel 安装,使用 TALL-stack,并安装几个有见地的包。

1.4.0 2022-04-29 12:45 UTC

README

Tall-Install Banner

安装 TALL-stack 并启动开发的一个简单命令🚀

Run Package Tests Run Laravel Tests (Pest) (normal version) Run Laravel Tests (Pest) (DDD-version)

此包为 Laravel 提供了一个简单的 artisan 命令,可以 完全搭建 您的应用程序并 启动开发

它基本上会运行您所有喜欢的包的安装过程,这样您就可以立即开始开发了!

⚡️查看发布文章并订阅我的时事通讯以获取更新

演示项目

👉 查看演示项目文件结构

👉 查看具有自动生成域驱动文件结构的演示项目

功能

  1. 它会为您的喜爱的 TALL-tools 运行常规安装过程,因此您无需做任何事情 🚀
  2. 安装 Pest 而不是 PHPUnit ⚙️
  3. 配置域驱动文件结构(DDD)✨
  4. 为 Valet 用户安装 Browsersync ⚡️

它安装了什么?

它可以安装什么?

此包还可以为您做以下事情

路线图

  • Fortify 安装

此包的目的是完成所有后端安装,而不会强迫您进行任何前端操作。

缺少您喜欢的包?请随时提交问题或 PR 来提出您的建议。

内容

  1. 安装与使用
  2. 配置 DDD
  3. 安装 Pest
  4. 安装 Browsersync

安装与使用

要开始,您需要一个简单的 Laravel 安装

laravel new name
# or
composer create-project laravel/laravel name

通过 composer 安装包

composer require ralphjsmit/tall-install

现在运行 tall-install 命令

php artisan tall-install

# Run this to reindex potential changes in classes.
composer dump-autoload

您可以使用以下标志来安装特定的包。

注意:您只能在纯 Laravel 安装上使用此命令。否则,我无法保证正确的结果。

使用 tall-install --ddd 配置 DDD

您可以使用 --ddd-d 标志来配置 DDD

php artisan tall-install --ddd

我认为这是最有力的功能,因为它将您的 /app 目录重写为以下内容

src/Support
     ├── App
         ├── Console
         ├── Exceptions
         ├── HTTP
         ├── Providers
         ├── Application.php
     ├── Models
         User.php
     ├── View/Components/Layouts
         App.php
         Admin.php
src/Domain
     // Add your own 'domains' here. Domains are where the business logic of the application is.
     ├── Invoices...
     ├── Customers...
src/App
     // Add your own 'apps' here. Apps are the exposed to the outside (like APIs, a dashboard, a separate admin panel) or are your infrastructure (jobs).
     ├── Console
     ├── Jobs
     ├── Api

对我来说,一旦我开始使用 DDD,我就再也不想用其他任何东西了。Brent Roose 的 Laravel Beyond CRUD 课程是一个很好的参考。

使用 tall-install --pest 安装 Pest

您可以使用 --pest-p 标志来配置 Pest

php artisan tall-install --pest

使用 tall-install --browsersync 安装 Browsersync

您可以使用 --browsersync-b 标志来为 Laravel Valet 配置 Browsersync

php artisan tall-install --browsersync

这将向您的 webpack.mix.js 文件添加以下代码

/* Browsersync configuration with Laravel Valet */
mix.disableSuccessNotifications();

const domain = 'valetDomain.test';
const homedir = require('os').homedir();

mix.browserSync({
    proxy: 'https://' + domain,
    host: domain,
    open: 'external',
    https: {
        key: homedir + '/.config/valet/Certificates/' + domain + '.key',
        cert: homedir + '/.config/valet/Certificates/' + domain + '.crt'
    },
    notify: false, //Disable notifications
})

默认情况下,它使用当前文件夹名称作为 Valet 的域名。您可以使用 --url 标志指定自定义域名

php artisan tall-install --browsersync --url=custom.test

清理

在运行 tall-install 命令后,您可以从您的 Composer 依赖中删除此包

composer remove ralphjsmit/tall-install

通用

🐞 如果您发现了一个错误,请提交详细的问题报告,我会尽快修复它。

🔐 如果您发现了一个漏洞,请查看我们的安全策略:安全策略

🙌 如果您想贡献,请提交一个拉取请求。所有PR都会得到充分认可。如果您不确定我会不会接受您的想法,随时可以联系我!

🙋‍♂️ Ralph J. Smit