Spaces:
No application file
No application file
# Contribution Guide | |
Thank you for your valuable time. Your contributions will make this project better! Before submitting a contribution, please take some time to read the getting started guide below. | |
## Semantic Versioning | |
This project follows semantic versioning. We release patch versions for important bug fixes, minor versions for new features or non-important changes, and major versions for significant and incompatible changes. | |
Each major change will be recorded in the `changelog`. | |
## Submitting Pull Request | |
1. Fork [this repository](https://github.com/Chanzhaoyu/chatgpt-web) and create a branch from `main`. For new feature implementations, submit a pull request to the `feature` branch. For other changes, submit to the `main` branch. | |
2. Install the `pnpm` tool using `npm install pnpm -g`. | |
3. Install the `Eslint` plugin for `VSCode`, or enable `eslint` functionality for other editors such as `WebStorm`. | |
4. Execute `pnpm bootstrap` in the root directory. | |
5. Execute `pnpm install` in the `/service/` directory. | |
6. Make changes to the codebase. If applicable, ensure that appropriate testing has been done. | |
7. Execute `pnpm lint:fix` in the root directory to perform a code formatting check. | |
8. Execute `pnpm type-check` in the root directory to perform a type check. | |
9. Submit a git commit, following the [Commit Guidelines](#commit-guidelines). | |
10. Submit a `pull request`. If there is a corresponding `issue`, please link it using the [linking-a-pull-request-to-an-issue keyword](https://docs.github.com/en/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue#linking-a-pull-request-to-an-issue-using-a-keyword). | |
## Commit Guidelines | |
Commit messages should follow the [conventional-changelog standard](https://www.conventionalcommits.org/en/v1.0.0/): | |
```bash | |
<type>[optional scope]: <description> | |
[optional body] | |
[optional footer] | |
``` | |
### Commit Types | |
The following is a list of commit types: | |
- feat: New feature or functionality | |
- fix: Bug fix | |
- docs: Documentation update | |
- style: Code style or component style update | |
- refactor: Code refactoring, no new features or bug fixes introduced | |
- perf: Performance optimization | |
- test: Unit test | |
- chore: Other commits that do not modify src or test files | |
## License | |
[MIT](./license) |