awcodes/filament-installer

纤维管理面板应用程序安装器。

v2.0.2 2022-10-19 17:33 UTC

This package is auto-updated.

Last update: 2024-09-19 21:24:39 UTC


README

快速启动一个由纤维驱动的应用程序。

纤维安装器是一个命令行工具,它替代了Laravel安装器,并封装了在创建纤维应用程序时可能执行的最常见任务:在您的编辑器和浏览器中打开它,初始化git仓库,调整您的.env.env.example文件,等等。

要求

安装

composer global require awcodes/filament-installer

升级

composer global update awcodes/filament-installer

用法

确保~/.composer/vendor/bin已添加到您的终端路径。

cd ~/<code-directory>
filament new my-cool-filament-app

它具体做什么?

  • filament new $PROJECTNAME
  • 初始化git仓库,添加所有文件,然后在以下更改后进行提交,提交文本为"Initial commit"。
  • .env(和.env.example)数据库凭据替换为默认macOS MySQL凭据:数据库名为$PROJECTNAME,用户root,密码为空。
  • .env(和.env.example)的APP_URL替换为$PROJECTNAME.$YOURVALETTLD
  • 生成应用密钥
  • 设置深色模式(如果选择)
  • 如果选择,则构建自定义主题资源
  • 安装并设置Filament BreezyFilament ShieldFilament Sentry(如果选择)
  • 在您的首选编辑器中打开项目
  • 在浏览器中打开$PROJECTNAME.$YOURVALETTLD

注意:如果您的$PROJECTNAME中包含短划线(-),它们将在数据库名称中替换为下划线(_)。

还有一些基于您传递的参数(或在您的配置文件中定义)的附加行为,包括创建数据库、迁移、运行Valet Link和/或Secure,以及在创建新项目后运行您定义的自定义bash脚本。

自定义纤维安装器

虽然纤维安装器提供的默认操作很棒,但大多数用户可能需要自定义至少几个步骤。幸运的是,纤维安装器旨在可以自定义!

您有三种方法可以自定义纤维安装器的使用:命令行参数、配置文件和"after"文件。

大多数用户可能希望设置一次他们首选的配置选项,然后不再考虑它。这最好通过创建一个配置文件来解决。

但如果您发现自己需要根据项目逐个更改与纤维安装器的交互方式,您也可能希望使用命令行参数来在您使用纤维安装器时自定义它。

创建配置文件

您可以在~/.filament/config创建配置文件,而不是每次创建新项目时都传递相同的参数。

以下命令在文件不存在时创建文件,并编辑它

filament edit-config

配置文件包含您可以自定义的配置参数,并且将在每次使用纤维安装器时读取。

创建"after"文件

您还可以在~/.filament/after创建"after"文件,以便在创建新项目后运行额外的命令。

以下命令在文件不存在时创建文件,并编辑它

filament edit-after

"after"文件被视为bash脚本,因此您可以在此包含任何命令,例如安装额外的composer依赖项...

# Install additional composer dependencies as you would from the command line.
echo "Installing Composer Dependencies"
composer require awcodes/filament-quick-create spatie/laravel-ray

...或将额外的文件复制到您的新项目。

# To copy standard files to new filament project place them in ~/.filament/includes directory.
echo "Copying Include Files"
cp -R ~/.filament/includes/ $PROJECTPATH

您还可以访问配置文件中的变量,例如 $PROJECTPATH$CODEEDITOR

使用命令行参数

传入的任何命令行参数将覆盖 Filament 安装程序的默认值和您的配置设置。请参阅可以传入的参数完整列表

Filament 安装程序命令

  • helphelp-screen 显示帮助屏幕

  • edit-config 编辑您的配置文件(如果不存在则创建)

    filament edit-config
  • edit-after 编辑您的 "after" 文件(如果不存在则创建)

    filament edit-after

可配置参数

您可以在每次使用 Filament 安装程序时选择性地传入一个或多个这些参数。如果您发现自己在每次运行 Filament 安装程序时都希望配置这些设置,那么使用配置文件是完美的。

  • -e--editor 用于定义您的编辑器命令。在这里传入的内容将在创建项目后作为 $EDITOR . 运行。

    # runs "subl ." in the project directory after creating the project
    filament new my-cool-filament-app --editor=subl
  • -p--path 用于指定应用程序的安装位置。

    filament new my-cool-filament-app --path=~/Sites
  • -m--message 用于设置第一次 Git 提交消息。

    filament new my-cool-filament-app --message="This filament runs fast!"
  • -f--force 用于强制安装,即使目录已存在

    # Creates a new Laravel application after deleting ~/Sites/my-cool-filament-app
    filament new my-cool-filament-app --force
  • -d--dev 用于选择 develop 分支而不是 master,以获取测试版安装。

    filament new my-cool-filament-app --dev
  • -b--browser 用于定义您希望在哪个浏览器中打开项目。

    filament new my-cool-filament-app --browser="/Applications/Google Chrome Canary.app"
  • -l--link 用于创建指向项目目录的 Valet 链接。

    filament new my-cool-filament-app --link
  • -s--secure 用于使用 https 保护 Valet 网站。

    filament new my-cool-filament-app --secure
  • --create-db 用于创建一个与您的项目同名的新的 MySQL 数据库。这要求您的系统上可用的 mysql 命令。

    filament new my-cool-filament-app --create-db
  • --migrate-db 用于迁移数据库。

    filament new my-cool-filament-app --migrate-db
  • --dbuser 用于指定数据库用户名。

    filament new my-cool-filament-app --dbuser=USER
  • --dbpassword 用于指定数据库密码。

    filament new my-cool-filament-app --dbpassword=SECRET
  • --dbhost 用于指定数据库主机。

    filament new my-cool-filament-app --dbhost=127.0.0.1
  • --dark 用于默认使用 Filament 暗黑模式。

    filament new my-cool-filament-app --dark
  • --themed 用于生成自定义 Filament 主题所需的资产。

    filament new my-cool-filament-app --themed
  • --mix 用于将 Laravel 返回到 Laravel Mix 而不是 Vite。

    filament new my-cool-filament-app --mix
  • --breezy 用于安装和设置 Filament Breezy(身份验证插件)。

    filament new my-cool-filament-app --breezy
  • --shield 用于安装和设置 Filament Shield(授权插件)。

    filament new my-cool-filament-app --shield
  • --sentry 用于安装和设置 Filament Sentry(身份验证,与 Breezy 一起使用,授权,与 Shield 和 Filament 用户资源插件一起使用)。

    filament new my-cool-filament-app --sentry
  • --full 用于使用 --create-db--migrate-db--link-secure

    filament new my-cool-filament-app --full
    

GitHub 仓库创建

重要:要创建新仓库,Filament 安装程序需要安装以下工具之一

如果没有安装这些工具,Filament 安装程序将为您提供不创建 GitHub 仓库而继续的选项。

  • -g--github 用于初始化一个新的私有 GitHub 仓库并将您的新项目推送到它。
# Repository created at https://github.com/<your_github_username>/my-cool-filament-app
filament new my-cool-filament-app --github
  • --github 一起使用 --gh-public 使新的 GitHub 仓库公开。
filament new my-cool-filament-app --github --gh-public
  • --github 一起使用 --gh-description 以初始化具有描述的新 GitHub 仓库。
filament Installer new my-cool-filament-app --github --gh-description='My cool Filament application'
  • --github 一起使用 --gh-homepage 以初始化具有主页 URL 的新 GitHub 仓库。
filament Installer new my-cool-filament-app --github --gh-homepage=https://example.com
  • --github 一起使用 --gh-org 以初始化具有指定组织的新的 GitHub 仓库。
# Repository created at https://github.com/acme/my-cool-filament-app
filament new my-cool-filament-app --github --gh-org=acme