chore: update contributing md file

This commit is contained in:
fangsmile 2024-05-21 10:21:34 +08:00
parent 78e38ba33b
commit 57a51a922a
2 changed files with 383 additions and 89 deletions

View File

@ -1,72 +1,219 @@
# Contributing
# Contribution Guide
## Code of Conduct
Firstly, I applaud your decision to join the ranks of open source contributors👍🏻. Moreover, we're very thankful you chose to participate in the VisActor community and contribute to this open-source project.
We has adopted [the Contributor Covenant](CODE_OF_CONDUCT.md) as our Code of Conduct, and we expect project participants to adhere to it. Please read the full text so that you can understand what actions will and will not be tolerated.
## VTable Contribution Guide
## Open Development
VisActor team usually develops and maintains issues on github. Please open [Github website](https://github.com/), click the `Sign up` button in the upper right corner, and register an account to start your first step in the open source journey.
All work on VTable happens directly on GitHub. Both core team members and external contributors send pull requests which go through the same review process.
If you can't open the Github site for some reason, you can also develop the project through [Gitee](https://gitee.com/VisActor/VTable).
## Semantic Versioning
In the [VTable repository](https://github.com/VisActor/VTable), we have a [guide](https://github.com/VisActor/VTable/blob/develop/CONTRIBUTING.zh-CN.md) for all open source contributors, which introduces version management, branch management, and other content. **Please take a few minutes to read and understand it**.
VTable follows [semantic versioning](https://semver.org/). We release patch versions for critical bugfixes, minor versions for new features or non-essential changes, and major versions for any breaking changes. When we make breaking changes, we also introduce deprecation warnings in a minor version so that our users learn about the upcoming changes and migrate their code in advance.
## Your First PullRequest
Every significant change is documented in the changelog file.
### Step1: Install Git
## Release Schedule
Git is a version control system used to track and manage code changes in software development projects. It helps developers record and manage code history, facilitate team collaboration, code version control, merge code, and more. With Git, you can track every version of every file and easily switch and compare between different versions. Git also provides branch management capabilities, allowing for multiple parallel development tasks to be performed simultaneously.
todo
- Visit the Git official website: <https://git-scm.com/>
- Download the latest version of Git installer.
- Run the downloaded installer and follow the prompts in the installation wizard.
- After installation, you can use the `git version` command through the command line to confirm successful installation.
## Branch Organization
<div style="width: 80%; text-align: center;">
<img src="https://lf9-dp-fe-cms-tos.byteorg.com/obj/bit-cloud/VTable/guide/contribution_1.png" />
</div>
Submit all changes directly to the main branch. We dont use separate branches for development or for upcoming releases. We do our best to keep main in good shape, with all tests passing.
### Step2: Fork the project
Code that lands in main must be compatible with the latest stable release. It may contain additional features, but no breaking changes. We should be able to release a new minor version from the tip of main at any time.
- You need to fork this project first, go to the [VTable project page](https://github.com/VisActor/VTable), and click the Fork button in the upper right corner
## Bugs
<div style="width: 80%; text-align: center;">
<img src="https://lf9-dp-fe-cms-tos.byteorg.com/obj/bit-cloud/VTable/guide/contribution_2.png" />
</div>
We are using [GitHub Issues](todo) for our public bugs. We keep a close eye on this and try to make it clear when we have an internal fix in progress. Before filing a new task, try to make sure your problem doesnt already exist.
- You will find the project "xxxx(your github username)/VTable" in your github account.
- On your local computer, use the following command to get a "VTable" folder.
We have already prepared issue templates for bug reports and feature requests. If you want to fire an issue, just enter the [New issue](todo) page and select either of them to get started. The best way to get your bug fixed is by using our issue template and provide reproduction steps with this [template](todo).
```
// ssh
git clone git@github.com:xxxx(your github user name)/VTable.git
// https
git clone https://github.com/xxxx(your github user name)/VTable.git
```
## Proposing a Change
### Step3: Get the Project Code
If you intend to change the public API, or make any non-trivial changes to the implementation, we recommend filing an issue, or just enter the [New issue](todo) page and select either of them to get started.
- Enter the VTable folder and add the remote address of VTable
If youre only fixing a bug, its fine to submit a pull request right away but we still recommend to file an issue detailing what youre fixing. This is helpful in case we dont accept that specific fix but want to keep track of the issue.
```
git remote add upstram https://github.com/VisActor/VTable.git
```
## Your First Pull Request
- Get the latest source code of VTable
Working on your first Pull Request? You can learn how from this free video series:[How to Contribute to an Open Source Project on GitHub](https://egghead.io/courses/how-to-contribute-to-an-open-source-project-on-github)
```
git pull upstram develop
```
To help you get your feet wet and get you familiar with our contribution process, we have a list of [good first issues](todo) that contain bugs that have a relatively limited scope. This is a great place to get started.
### Step4: Create a Branch
If you decide to fix an issue, please be sure to check the comment thread in case somebody is already working on a fix. If nobody is working on it at the moment, please leave a comment stating that you intend to work on it so other people dont accidentally duplicate your effort.
- Okay, now we can start contributing our code. The default branch of VTable is the develop branch. Whether it is for feature development, bug fixes, or documentation writing, please create a new branch and merge it into the develop branch. Use the following code to create a branch:
If somebody claims an issue but doesnt follow up for more than two weeks, its fine to take it over but you should still leave a comment.
```
// Create a feature development branch
git checkout -b feat/xxxx
### Sending a Pull Request
// Create a development branch for issue fixing
git checkout -b fix/xxxx
The core team is monitoring for pull requests. We will review your pull request and either merge it, request changes to it, or close it with an explanation. Well do our best to provide updates and feedback throughout the process.
// Create document, demo branch
git checkout -b docs/add-funnel-demo
```
**Before submitting a pull request**, please make sure the following is done:
- Now we can make changes to the code on the branch.
- Let's say we've added some code and committed it to the repository.
- `git commit -a -m "docs: add custom funnel demo and related docs"`. The commit message for VisActor follows the [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/) specification:
1. Fork the [repository](todo) and create your branch from `main`.
2. (If rush has been install, just go to step 3) global install [@microsoft/rush](https://rushjs.io/pages/intro/get_started/)`npm i --global @microsoft/rush`.
3. Run `rush update --full` in the repository root.
4. If youve fixed a bug or added code that should be tested, add tests!
5. Ensure the test suite passes (`rush test`). Tip: `rush test -- --watch TestName` is helpful in development.
6. Make sure your code lints (`rush lint`). Tip: Lint runs automatically when you git commit (Use Git Hooks).
7. Run `rush compile` for typecheck.
- `<type>[optional scope]: <description>`.
- Common `type` include docs (documentation, log changes), feat (new features), fix (bug fixes), refactor (code refactoring), etc. Please choose according to the actual situation.
- Please write the description in English with short and accurate descriptions.
- Before committing, we will perform commit lint checks. For details, see [inspection rules](https://github.com/VisActor/VTable/blob/develop/common/autoinstallers/lint/commitlint.config.js).
## Development Workflow
### Step5: Merge and Modify
After cloning VTable, run `rush update --full` to fetch its dependencies. Then, you can run several commands:
- A common problem is that the remote upstram (@visactor/VTable) has been updated with new commits, which can cause conflicts when we submit a Pull Request. Therefore, we can merge the commits from other developers on the remote repository with our commits before submitting. To switch to the develop branch, use the following code:
1. `rush start` runs VTable test page locally.
2. `rush eslint` checks the code style.
3. `rush test` runs the complete test suite.
4. `rush run -p <project_name> -s <script>` run the specified script for the specified project, eg. `rush run -p @visactor/vtable -s start`
5. `rush prettier --dir <project_relative_path> --ext <file_type>` prettier the specified script for the specified project, eg. `rush prettier --dir packages/vtable --ext ts`
```
git checkout develop
```
- Use the following code to pull the latest code from remote:
```
git pull upstram develop
```
- Switch back to your development branch.
```
git checkout docs/add-funnel-demo
```
- Merge the commit of develop into `add-funnel-demo`:
```
git rebase develop
```
- Commit the updated code to your own branch:
```
git push upstram docs/add-funnel-demo
```
### Step6: Submit a Pull Request
You can click the `Pull requests `button on your GitHub code repository page and then click `New pull request`.
<div style="width: 80%; text-align: center;">
<img src="https://lf9-dp-fe-cms-tos.byteorg.com/obj/bit-cloud/VTable/guide/contribution_3.png" />
</div>
Choose to submit to the develop branch.
Fill in the changes of this submission according to the template:
- Check what type of change it is.
<div style="display: flex;">
<div style="width: 30%; text-align: center; ">
<img src="https://lf9-dp-fe-cms-tos.byteorg.com/obj/bit-cloud/VTable/guide/contribution_4.png" />
</div>
</div>
- Fill in the associated issue
<div style="display: flex;">
<div style="width: 20%; text-align: center;">
<img src="https://lf9-dp-fe-cms-tos.byteorg.com/obj/bit-cloud/VTable/guide/contribution_5.png" />
</div>
</div>
- For complex changes, please explain the background and solution.
<div style="display: flex;">
<div style="width: 60%; text-align: center;">
<img src="https://lf9-dp-fe-cms-tos.byteorg.com/obj/bit-cloud/VTable/guide/contribution_6.png" />
</div>
</div>
After filling in the relevant information, click Create pull request to submit.
## Mini Task Development Guide
"**good first issue**" is a common label in open source communities, and its purpose is to help new contributors find suitable entry-level issues.
For entry-level issues of VTable, you can view them through the [issue list](https://github.com/VisActor/VTable/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22), which currently includes two types:
- Demo writing
- Bug fixes and simple feature development
If you currently **have the time and willingness** to participate in community contributions, you can look at **good first issue** in the issue and choose one that interests you and suits you.
I believe you must be a person who has a beginning and an end, so when you understand and decide to claim an issue, please leave a message under the issue to let everyone know.
### Demo Task
We have prepared some common cases in practical application scenarios that require you to think about how to utilize the capabilities of VTable to achieve them. You can use these tasks to get started with using VTable. VTable provides rich capabilities, and everyone may have different implementation ideas. **You can leave a comment under the issue and discuss your solution with others**.
After completing the task, you can submit your created case to the official demo on the website, allowing more people in need to learn and use it. All demos are stored in the `docs/assets/demo` directory.
1. Please base your development on the `develop` branch and create a new `docs/***` branch.
1. (Skip this step if you have already installed it) Globally install [@microsoft/rush](https://rushjs.io/pages/intro/get_started/) using `npm i --global @microsoft/rush`
1. Run `rush update` from the root directory.
1. Run `rush docs` to preview the current demo content locally.
1. Under the `docs` directory:
1. Add your demo information to the `docs/assets/demo/menu.json` directory file.
1. Complete the Chinese and English demo documents in the `zh`/`en` directories, respectively.
1. For the cover address cover field, you can contact the VTable team members to assist with uploading.
1. Commit all your code and create a Pull Request on Github, inviting others to review it.
### Bug fix/Feature Task
Here are some simple and easy-to-get-started feature development tasks. If you have a certain foundation in JavaScript/TypeScript, you can claim these tasks.
You can learn the VTable code architecture more quickly by developing requirements. **You can leave a message under the issue and discuss your solution with everyone**.
1. Please base your development on the develop branch and create a new `feat/***` or `fix/***` branch.
1. (Skip this step if you have already installed it) Globally install @microsoft/rush: `npm i --global @microsoft/rush`.
```
# install dependencies
$ rush update
# enter vtable package
$ cd packages/vtable
# execute in file path: ./packages/vtable
$ rushx demo
# start site development server, execute in file path: ./
$ rush docs
# after execut git commit, please run the following command to update the change log. Please execute in file path: ./
$ rush change-all
```
3. Submit all code and create a Pull Request on Github, inviting others to review it.
## Embrace the VisActor Community
In addition to contributing code to VisActor, we encourage you to participate in other activities that will make the community more prosperous, such as:
1. Suggesting ideas for project development, functional planning, etc.
1. Creating articles, videos, and holding lectures to promote VisActor.
1. Writing promotion plans and executing them together with the team.
VisActor is also committed to helping students who participate in community building grow together. We plan (but are not limited to, and we look forward to more suggestions from everyone) to provide the following assistance:
1. Data visualization research and development training based on VisActor to help participating students grow rapidly in programming skills, visualization theory, architecture design, and other aspects.
1. Regularly select "Code Contribution Awards" and "Community Promotion Awards."
1. Organize community members to participate in open source activities

View File

@ -1,82 +1,229 @@
# 贡献指南
# VTable 开源代码贡献指南
首先非常感谢你能抽出时间为我们的开源项目做贡献。希望这份指南能够清晰地阐明贡献过程并回答你可能有的一些问题,所以请你在提 issue 或者 pull request 之前花几分钟时间阅读
首先为你选择加入开源贡献行列的行为点赞 👍🏻。再者,十分感谢你选择参与到 VisActor 社区,为这个开源项目做出贡献
## 行为准则
## VTable 贡献指南
我们有一份[行为准则](CODE_OF_CONDUCT.md),希望所有的贡献者都能遵守,请花时间阅读一遍全文以确保你能明白哪些是可以做的,哪些是不可以做的
VisActor 团队通常在 github 上进行开发和 issue 维护,请打开 [Github 网站](https://github.com/),点击右上角 `Sign up` 按钮,注册一个自己的账号,开启你开源之旅的第一步
## 透明的开发
如果因为特殊情况,你无法打开 Github 站点,也可以通过 [Gitee](https://gitee.com/VisActor/VTable) 进行项目开发。
我们所有的工作都会放在 [GitHub](https://github.com/VisActor/) 上。不管是核心团队的成员还是外部贡献者的 pull request 都需要经过同样流程的 review
在 [VTable 仓库](https://github.com/VisActor/VTable)中,我们有一份面向所有开源贡献者的[指南](https://github.com/VisActor/VTable/blob/develop/CONTRIBUTING.zh-CN.md),介绍了有关版本管理、分支管理等内容,**请花几分钟时间阅读了解一下**
## 版本管理
## 你的第一个 PullRequest
VTable 遵循[语义化版本控制](https://semver.org/lang/zh-CN/)。我们发布 patch 补丁版本以修复重要的错误,发布 minor 次要版本以提供新功能或非必要的更改,发布 major 主要版本以适应任何重大更改。当我们进行重大更改时,在次要版本中还会引入弃用警告,以便用户了解即将到来的更改并提前迁移代码。
### Step1安装 Git
每个重要的更改我们都会记录在对应项目 CHANGELOG 更新日志中
Git 是一种版本控制系统,用于跟踪和管理软件开发项目中的代码变更。它帮助开发者记录和管理代码的历史记录,方便团队协作、代码版本控制、合并代码等操作。通过 Git您可以追踪每个文件的每个版本并轻松地在不同版本之间进行切换和比较。Git 还提供了分支管理功能,使得可以同时进行多个并行开发任务
## 发布周期
- 访问 Git 官方网站:<https://git-scm.com/>
- 下载最新版本的 Git 安装程序。
- 运行下载的安装程序,按照安装向导的提示进行安装。
- 安装完成后,你可以通过命令行使用 `git version` 命令确认安装成功。
- patch 修订版本号todo
- minor 次版本号todo
- major 主版本号todo
<div style="width: 80%; text-align: center;">
<img src="https://lf9-dp-fe-cms-tos.byteorg.com/obj/bit-cloud/VTable/guide/contribution_1.png" />
</div>
## 分支管理
### Step2Fork 项目
<!-- TODO待讨论 -->
- 首先需要 fork 这个项目,进入[VTable 项目页面](https://github.com/VisActor/VTable),点击右上角的 Fork 按钮
**请将所有的更改提交到 `main` 主分支**。我们不使用单独的分支进行开发或即将发布的版本管理。我们尽力保持主分支良好状态,确保所有测试都能通过。
<div style="width: 80%; text-align: center;">
<img src="https://lf9-dp-fe-cms-tos.byteorg.com/obj/bit-cloud/VTable/guide/contribution_2.png" />
</div>
这里需要注意,所有进入主分支的代码必须与最新的稳定版本兼容,它可能包含其他功能,但不能有任何破坏性更改。我们应该能够随时从主分支的末端发布一个新的次要版本。
- 你的 github 帐号中会出现 xxxx(你的 github 用户名)/VTable 这个项目
- 在本地电脑上使用以下命令: 得到一个 VTable 文件夹
## Bugs 管理
```
// ssh
git clone git@github.com:xxxx(你的github用户名)/VTable.git
// https
git clone https://github.com/xxxx(你的github用户名)/VTable.git
```
我们使用 [GitHub Issues](todo) 来追踪所有的缺陷。无论内外部的缺陷,我们都会在 issues 上进行管理,尽量让一切公开、清晰明了。在你报告一个 bug 之前,请先确保已经搜索
过已有的 issues。
### Step3获取项目代码
如果你想要你发现的 bug 被快速解决,最好的办法就是根据我们提供的 issue 模板进行提问,只需要进入 [New issue](todo) 页面,然后选择其中任意一个开始即可,最好能使用这个[模板](todo) 来提供复现的示例代码。
- 进入 VTable 文件夹,添加 VTable 的远程地址
## 提交变更建议
```
git remote add upstream https://github.com/VisActor/VTable.git
```
如果你有改进我们的配置项、接口或者新增功能的想法,我们同样推荐你通过 issue 进行提问,或者进入我们的 [New issue](todo) 页面,选择相应的 issue 模板进行提交,
- 获取 VTable 最新源码
如果你准备帮助我们修复一个 bug那么你可以立即提交一个 pull request 请求,但我们仍然建议你先创建一个 issue 并在 issue 中详细说明将要修复的内容,这样可以帮助我们更好得追踪问题。
```
git pull upstream develop
```
## 你的第一个 Pull Request
### Step4创建分支
`
如果你还不清楚怎么在 GitHub 上提 Pull Request ,可以阅读下面这篇文章来学习:[如何优雅地在 GitHub 上贡献代码](https://segmentfault.com/a/1190000000736629)
- 好了现在可以开始贡献我们的代码了。VTable 默认分支为 develop 分支。无论是功能开发、bug 修复、文档编写,都请新建立一个分支,再合并到 develop 分支上。使用以下代码创建分支:
为了能帮助你开始你的第一次尝试,我们用[good first issues](todo)标记了一些比较容易修复的 bug 和小功能。这些 issue 可以很好地作为你的首次尝试。
```
// 创建功能开发分支
git checkout -b feat/xxxx
如果你打算开始处理一个 issue请先检查一下 issue 下面的留言以确保没有别人正在处理这个 issue。如果当前没有人在处理的话你可以留言告知其他人你将会处理这个 issue以免别人重复劳动。
// 创建问题修复开发分支
git checkout -b fix/xxxx
如果之前有人留言说会处理这个 issue 但是一两个星期都没有动静,那么你也可以接手处理这个 issue当然还是需要留言告知其他人。
// 创建文档、demo分支
git checkout -b docs/add-funnel-demo
```
### 如何发送 Pull Request
假设我们创建了文档修改分支 `docs/add-funnel-demo`
VisActor 团队会关注所有的 pull request我们会 review 以及合并你的代码,也有可能要求你做一些修改或者告诉你我们为什么不能接受这样的修改。我们将尽最大努力在整个过程中提供及时的更新和反馈。
- 现在我们可以在分支上更改代码了
- 假设我们已经添加了一些代码,提交到代码库
- git commit -a -m "docs: add custom funnel demo and related docs" 。VisActor 的 commit 提交信息遵循 [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/) 规范
在**你发送 Pull Request 之前**,请确认你是按照下面的步骤来做的:
- `<type>[optional scope]: <description>`
- 其中常用 `type`包括 docs文档、日志修改、feat新功能、fix问题修复、refactor代码重构请根据实际情况选择。
- 请用简短精确的英文描述编写 description
- 提交 commit 之前,我们会进行 commit lint 检查,具体可以查看[检查规则](https://github.com/VisActor/VTable/blob/develop/common/autoinstallers/lint/commitlint.config.js)
<!-- TODO: 待完善 -->
### Step5合并修改
1. 基于 `main` 分支做修改
2. (如果你已经安装,请跳过此步骤)全局安装 [@microsoft/rush](https://rushjs.io/pages/intro/get_started/)`npm i --global @microsoft/rush`
3. 根目录下运行 `rush update --full`
4. 如果你修复了一个 bug 或者新增了一个功能,请确保写了相应的测试,这很重要。
5. 确认所有的测试都是通过的 `rush test`。 小贴士:开发过程中可以用 `rush test -- --watch TestName` 来运行指定的测试。
6. 确保你的代码通过了 lint 检查 `rush lint`. 小贴士: Lint 会在你 git commit 的时候自动运行(通过 Git Hooks
7. 运行 `rush compile` 进行 ts 类型检测。
- 一个常见的问题是远程的 upstream (@visactor/VTable) 有了新的更新, 从而会导致我们提交的 Pull Request 时会导致冲突。 因此我们可以在提交前先把远程其他开发者的 commit 和我们的 commit 合并。使用以下代码切换到 develop 分支:
## 开发流程
```
git checkout develop
```
在你 clone 了 VTable 的代码并且使用 `rush update --full` 安装完依赖后,你还可以运行下面几个常用的命令:
- 使用以下代码拉出远程的最新代码:
1. `rush start` 在本地运行 VTable 代码的测试页面
2. `rush eslint` 运行所有项目的 eslint 脚本
3. `rush test` 运行所有项目的 test 脚本
4. `rush run -p <project_name> -s <script>` 运行指定项目的指定脚本eg. `rush run -p @visactor/vtable -s start`
5. `rush prettier --dir <project_relative_path> --ext <file_type>` 格式化指定项目的源代码eg. `rush prettier --dir packages/vtable --ext ts`
```
git pull upstream develop
```
- 切换回自己的开发分支:
```
git checkout docs/add-funnel-demo
```
- 把 develop 的 commit 合并到 `add-funnel-demo`:
```
git rebase develop
```
- 把更新代码提交到自己的分支中:
```
git push upstream docs/add-funnel-demo
```
### Step6提交 Pull Request
你可以在你的 github 代码仓库页面点击 `pull requests` 按钮,点击`New pull request`。
<div style="width: 80%; text-align: center;">
<img src="https://lf9-dp-fe-cms-tos.byteorg.com/obj/bit-cloud/VTable/guide/contribution_3.png" />
</div>
选择提交到 develop 分支。
按照模板填写本次提交的修改内容:
- 勾选这是什么类型的修改
<div style="display: flex;">
<div style="width: 30%; text-align: center; ">
<img src="https://lf9-dp-fe-cms-tos.byteorg.com/obj/bit-cloud/VTable/guide/contribution_4.png" />
</div>
</div>
- 填写关联的 issue
<div style="display: flex;">
<div style="width: 20%; text-align: center;">
<img src="https://lf9-dp-fe-cms-tos.byteorg.com/obj/bit-cloud/VTable/guide/contribution_5.png" />
</div>
</div>
- 若有复杂变更,请说明背景和解决方案
<div style="display: flex;">
<div style="width: 60%; text-align: center;">
<img src="https://lf9-dp-fe-cms-tos.byteorg.com/obj/bit-cloud/VTable/guide/contribution_6.png" />
</div>
</div>
相关信息填写完成后,点击 Create pull request 提交。
## Mini Task 开发指南
"**good first issue**" 是一个在开源社区常见的标签,这个标签的目的是帮助新贡献者找到适合入门的问题。
VTable 的入门问题,你可以通过 [issue 列表](https://github.com/VisActor/VTable/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22) 查看,目前包括两类:
- Demo 编写
- bug 修复及简单功能开发
如果你当前**有时间和意愿**参与到社区贡献,可以在 issue 里看一看 **good first issue**,选择一个感兴趣、适合自己的认领。
相信你一定是一个有始有终的同学,所以,当你了解并决定认领一个 issue 后,请在 issue 下留言告知大家。
### Demo Task
我们准备了一些在实际应用场景中常见的案例,需要思考如何利用 VTable 的能力实现。
你可以通过这类任务,上手对 VTable 的使用。VTable 提供了丰富的能力,每个人或许都有不同的实现思路,**你可以在 issue 下留言,和大家讨论自己的方案**。
任务完成后,你可以将自己制作的案例提交到官网 demo让更多需要的人学习和使用。
所有的 demo 存放在 `docs/assets/demo` 目录下
1. 请基于 develop 分支,新拉一个 `docs/***`分支进行开发
1. (如果你已经安装,请跳过此步骤)全局安装 [@microsoft/rush](https://rushjs.io/pages/intro/get_started/)`npm i --global @microsoft/rush`
1. 根目录下运行 `rush update`
1. 运行`rush docs` 在本地预览目前 demo 内容
1. `docs` 目录下
1. `docs/assets/demo/menu.json` 目录文件中添加你的 demo 信息
1. 在`zh`/`en`目录下分别完成中英文 demo 文档
1. 封面地址 cover 字段 可以联系 vtable 的团队成员帮忙上传。
1. 提交所有代码,并在 Github 创建 Pull Request邀请其他人进行 review
### Bug fix/Feature Task
我们准备了一些简单、易上手的特性开发任务,如果你有一定的 Javascript / Typescript 基础,可以认领这类任务。
你可以通过 bug 的修复及需求的开发过程,从而更快地了解 VTable 代码架构。**你可以在 issue 下留言,和大家讨论自己的方案**。
1. 请基于 develop 分支,新拉一个 `feat/***` or `fix/***`分支进行开发
1. (如果你已经安装,请跳过此步骤)全局安装 [@microsoft/rush](https://rushjs.io/pages/intro/get_started/)`npm i --global @microsoft/rush`。
常用的项目命令行如下:
```
# 注释:安装依赖。 install dependencies
$ rush update
# 注释进入vtable目录。 enter vtable package
$ cd packages/vtable
# 注释:启动开发测试页面。 execute in file path: ./packages/vtable
$ rushx demo
# 注释:在外层目录启动官网页面。 start site development server, execute in file path: ./
$ rush docs
# 注释提交代码后生成changelog。 after execut git commit, please run the following command to update the change log. Please execute in file path: ./
$ rush change-all
```
3. 提交所有代码,并在 Github 创建 Pull Request邀请其他人进行 review
## 拥抱 VisActor 社区
在你为 VisActor 贡献代码之余,我们鼓励你参与其他让社区更加繁荣的事情,比如:
1. 为项目的发展、功能规划 等提建议
1. 创作文章、视频,开办讲座来宣传 VisActor
1. 撰写推广计划,同团队一同执行
VisActor 也在努力帮助参与社区建设的同学一同成长,我们计划(但不限于,期待大家更多的建议)提供如下帮助:
1. 以 VisActor 为基础的数据可视化研发培训,帮助参与的同学在编程技能、可视化理论、架构设计等多个方面快速成长。
1. 定期评选“代码贡献奖”和“社区推广奖”
1. 组织社区成员参与开源活动