layui/CONTRIBUTING.md

3.6 KiB
Raw Blame History

🍀 Layui Issue 贡献指南

为了提升沟通效率,请花几分钟时间仔细阅读本文档。遵循这些指南有助于表达您尊重管理和开发这个开源项目的贡献者。作为回报,他们也会以同样的尊重来处理或评估您的问题和功能请求。

创建 Issue 之前

Layui 的 issue 只受理 「Bug 报告」和「功能请求」。如果是关于如何使用、功能疑惑或其他业务相关的问题建议在 Discussions 寻找社区帮助。若 issue 不符合规定或违背社区行为准则,它将会被立即关闭。

在正式创建 Issue 之前,您应当确保已完成以下前置工作

  • 仔细查看 Layui 官方文档和每个版本的更新日志:https://layui.dev
  • 在 Issues 中搜索相似问题,找到解决方案,但应避免在旧的 Issue 中留言。
  • 通过其他技术社区搜索相关资料、或充分利用当前主流的人工智能大模型

为什么要有严格的 issue 规定

维护开源项目是一项艰辛的工作,它崇高而又略显卑微。加上 Layui 的使用门槛相对较低随着受众的广为推崇我们每天疲于应对各种技术反馈包括bug 报告,功能需求和 Pull Requests。

作为一个免费使用的开源项目Layui 的维护人手是有限的。这意味着想要让项目可持续发展,我们必须:

  1. 给予更具体的工作、更高的优先级(如 bug 修复和新功能的开发);
  2. 提高 issue 处理的效率。

针对 (1),我们决定将 GitHub issue 严格地限制在有具体目标和内容的工作。问题和讨论应当发送到更适合它们的场合。比如关于「如何使用」,建议发到 Layui 讨论区,或者把它细化成更具体的 Bug 和 Feature Request。这两者的区别是「如何使用」是一个未经思考和调研的问句而 Bug 和 Feature Request 需要提问者进一步明确这是一个缺陷或者未支持的特性。

针对 (2),我们发现影响 issue 处理效率最大两点因素是a) 用户开 issue 之前并没有做好前置工作,这导致大量重复且初级的 issue 不断出现b) 用户开 issue 时没有提供足够有效的信息,这导致我们需要花费大量的时间去跟用户来回沟通,只为了获得一些基本信息好让我们对 issue 进行真正的分析。因此,为了减少不必要的资源消耗,严格要求 Issue 规定是迫切和必要的。尤其对于 Layui 核心维护者,应当让他们的主要精力投入到项目更重要的工作中去。

最重要的是请明白一件事开源项目的用户和维护者之间并不是甲方和乙方的关系issue 也不是客服。在开 issue 的时候,请抱着「一起合作来解决这个问题」的心态,避免期待社区单方面地为你服务。

以上借鉴了 Ant Design 社区的成熟经验,并做了适用于 Layui 社区的相关修改。

正式创建 issue

当您已对上述事项充分阅读并理解,在正式创建过程中,您应当遵循 Issue 提供表单规范仔细填写,尽可能将您所遇到的 Bug 或 Feature Request 描述详细。

创建 issue 之后

  • 在 issue 交流过程中,若议题已经得到解决,请主动关闭 issue。
  • 大家本着相互尊重、理解和友善的态度,共同维护 Layui 来之不易的良好的社区氛围,谢谢 💖

其他参考资料

  1. 贡献者行为准则
  2. 提问的智慧 @tvvocold
  3. 为什么需要最小重现 @antfu