贡献指南
INFO
本指南部分内容改编自 Laravel 贡献指南,并受其启发。
报告缺陷
请尽可能提供完整信息,尤其是应用中各包的版本号。可在应用中使用下列 Artisan 命令打开新 issue,并自动预填正确版本:
php artisan make:filament-issue创建 issue 时必须提供「复现仓库」。请勿链接你的真实项目。我们需要的是在全新项目中的_最小_复现,不含无关代码。因此即便真实项目私有/涉密也没关系——我们要的是独立、隔离的复现链接,这样才能更快修复。若缺少复现仓库,issue 会自动关闭且不予审阅,以节省维护者时间,并对认真报告者公平。若你认为该问题确实不适合提供复现仓库(极少见),请 @danharrin 并说明原因。以「问题很简单」为由不建仓库不可接受!需要起步模板?这里有 Filament 项目模板。
请记住:提交缺陷报告是希望有相同问题的人能与你协作解决。不要期望报告会自动获得关注或立刻有人修复。创建报告是为了帮助你自己和他人开始走上修复之路。
开发新功能
若想为 Filament 提议新功能或改进,可使用 GitHub 上的讨论区。若打算自己用 Pull Request 实现,建议先在功能讨论中 @danharrin(Filament 核心维护者),确认是否适合纳入框架,以免浪费时间。
开发插件
若想开发 Filament 插件,请参阅文档中的插件开发。我们的 Discord 也适合提问与求助,可在 #plugin-developers-chat 频道开始讨论。
使用本地 Filament 副本开发
若要为 Filament 包做贡献,可在真实 Laravel 项目中测试:
- 将 [GitHub 仓库](https://github.com/filamentphp/filament) fork 到你的账号。
- 本地创建 Laravel 应用。
- 把 fork 克隆到 Laravel 应用根目录。
- 在 `/filament` 目录为修复创建分支,例如 `fix/error-message`。
在应用的 composer.json 中安装这些包:
{
// ...
"require": {
"filament/filament": "*",
},
"minimum-stability": "dev",
"repositories": [
{
"type": "path",
"url": "filament/packages/*"
}
],
// ...
}然后运行 composer update。
改完后提交变更,并向 GitHub 仓库 发起 Pull Request。
检查过期翻译
可用 Translation Tool 检查过期翻译。克隆 Filament 仓库,安装命令依赖后运行工具。
# Clone
git clone git@github.com:filamentphp/filament.git
# Install dependencies
composer install
# Run the tool
./bin/translation-tool.php先选择「List outdated translations」命令,再选择要检查的 locale。该命令会列出指定语言缺失的翻译,然后你可将缺失翻译以 Pull Request 提交到 GitHub 仓库。
安全漏洞
行为准则
Filament 发布时附带贡献者行为准则。参与本项目即表示你同意遵守其条款。