社区指南
Wails 用户量正在以惊人的速度增长,如果您正在阅读本文,那么您很有可能已经准备好加入它。 那么……欢迎加入!
资源
行为准则
敬请期待。
保持掌握最新消息
- 关注我们的 官方Twitter 账户。
寻求帮助
- GitHub - 如果您有要报告的错误或要请求的功能,这就是 GitHub Issue 的用途。 请遵守每个存储库的问题模板中指定的规则。
- Slack - Wails 开发人员实时见面和聊天的地方。
- QQ Group(中文) - 中文开发者交流的 Wails 群组,在这里你可以得到其他开发者的帮助。
探索生态系统
- The Awesome Wails Page - 看看其他人发布的精彩资源。
贡献方式
Wails 是一个开放源码、社区驱动的项目。 我们欢迎任何人加入我们 ,为该项目做出贡献。 此文档面向希望熟悉项目和开发过程的人。
有多种为该项目做出贡献的方式:
- 开发新功能
- 修复漏洞
- 测试
- 文档功能
- 编写教程/指南
- 在 issues 和 discussions boards 上帮助他人
这些指南已在各自的部分中创建。 在开始之前,请在Contributing to Wails讨论中介绍自己
开发新功能
我们总是热衷于为 Wails 添加功能并扩展项目的功能。 添加新功能的过程如下:
- 选择 "TODO" 标签的增强 Issue。 It's preferable to select one from the current Backlog but the choice is yours.
- Before developing, check that the ticket includes the following information:
- The purpose of the enhancement
- What is out of scope for the enhancement
- What platforms the enhancement targets (most features should be cross-platform unless there's a very specific reason)
- If the ticket does not include this information, feel free to request the information from the person who opened the ticket. Sometimes placeholder tickets are created and require more details
- Comment on the ticket stating you wish to develop the feature
- Clone the repository and create a branch with the format
feature/<ticket_number>_<ticket_title>
- New features often require documentation so please ensure you have also added or updated the documentation as part of the changes
- Once the feature is ready for testing, create a draft PR. Please ensure the PR description has the test scenarios and test cases listed with checkmarks, so that others can know what still needs to be tested.
- Once all the testing is completed, please update the status of the PR from draft and leave a message.
There is nothing stopping you from opening a ticket and working on it yourself, but please be aware that all enhancement requests are reviewed for good fit. Not all ideas will be selected so it's best to have discussion on the ticket first.
Any PRs opened without a corresponding ticket may be rejected.
修复漏洞
The process for fixing bugs are as follows:
- Check the current Backlog and select a bug to fix
- Before developing, check that the ticket includes the following information:
- The scope of the issue including platforms affected
- The steps to reproduce. Sometimes bugs are opened that are not Wails issues and the onus is on the reporter to prove that it is a Wails issue with a minimal reproducible example
- The output of
wails doctor
- If the ticket does not include this information, feel free to request the information from the person who opened the ticket.
- Comment on the ticket stating you wish to develop a fix
- Clone the repository and create a branch with the format
bugfix/<ticket_number>_<ticket_title>
- Once the fix is ready for testing, create a draft PR. Please ensure the PR description has the test scenarios and test cases listed with checkmarks, so that others can know what still needs to be tested.
- Once all the testing is completed, please update the status of the PR from draft and leave a message.
There is nothing stopping you from opening a ticket and working on it yourself, but please be aware that all bugfixes should be discussed as the approach may have unintended side effects.
Any PRs opened without a corresponding ticket may be rejected.
测试
Testing is vitally important to ensure quality in the project. There are a couple of scenarios where testing can really help the project:
- Testing if a bug is reproducible on your local system
- Testing PRs to ensure that they work correctly
If you chose to test if someone's bug report is reproducible on your local system, then feel free to add a comment on the ticket confirming this with the output of wails doctor
.
To test PRs, choose a PR to test and check if the PR description has the testing scenarios listed. If not, please ask the person who opened the PR to provide that list. Once you have determined a valid test scenario, please report your findings on the PR.
If you ever need more clarity or help on testing, please ask a question in the Contributing to Wails discussion or on slack.
文档
This website is also the main documentation site for the project. Sometimes this gets out of date and needs some slight adjustments. Some of the documentation isn't written to the best standards either. Developing documentation is hard and so any contribution to this is greatly appreciated. Features without documentation are unfinished so to the project, it's as important as the code.
We generally do not create tickets for updating documentation so if there is text you think should be updated or rephrased then feel free to submit a PR for that. This site is in the main repository under the website
directory. We use Docusaurus to create the site so there is plenty of existing documentation and tutorials around to get started.
To set up a local documentation development environment, do the following:
- Install npm
cd website
npm install
npm run start
After it has all installed and is running, you should see the site at http://localhost:3000
. Any changes made to the site text will be immediately reflected in the browser.
版本
We employ a versioning system where we have the "latest" documentation AKA "Next Version" which has all the changes that have occurred since the last release. We also keep the last release documentation as well as the version before that.
There isn't usually a reason to update released documentation so we don't generally update the documents in the versioned_docs
or versioned_sidebars
directories.
The "next version" docs are mainly in website/docs
with some "version independent" documents in src/pages
. Any updates should be made in the website/docs
directory.
语言
The default documents of the Wails project are English documents. We use the "crowdin" tool to translate documents in other languages and synchronize them to the website. You can join our project and submit your translations to make contributions.
添加新语言
If you want to add a new language to the documentation, please follow the prompts to fill in and submit an Issue. After being confirmed by the maintainer, we will add the language to the "crowdin" and you will then be able to submit your translation.
帮助其他人
A great way to contribute to the project is to help others who are experiencing difficulty. This is normally reported as a ticket or a message on the Wails slack channel. Even just clarifying the issue can really help out. Sometimes, when an issue is discussed and gets resolved, we create a guide out of it to help others who face the same issues.
To join the Wails slack channel, accept the invite here and join us on the channel by following this link.
Work In Progress