Thank you for your interest in contributing to Tunneler! We welcome all kinds of contributions, including bug fixes, new features, and documentation improvements.
- Node.js 16.x is required. Please ensure you are using Node 16 before contributing.
- Yarn is used for dependency management. Install it globally if you haven’t already:
npm install -g yarn
-
Fork the repository
Click the "Fork" button on GitHub to create your own copy of the repository. -
Clone your fork
git clone https://github.com/<your-username>/tunneler.git cd tunneler
-
Create a new branch
Name your branch according to the feature or fix you are working on:git checkout -b feat/your-feature-name # or git checkout -b fix/your-bug-description -
Install dependencies
yarn install
-
Make your changes
Edit or add files as needed. -
Lint and format your code
Run the following commands before committing to ensure code quality and consistency:yarn lint yarn format
-
Test your changes
If the project has tests, run them to make sure nothing is broken:yarn test(If there are no tests yet, you can skip this step.)
-
Commit your changes
Use clear and descriptive commit messages. For example:feat(route): add support for custom domains fix(tunnel): handle error when port is in use -
Push your branch to your fork
git push origin <your-branch-name>
-
Create a Pull Request (PR)
- Go to the original repository on GitHub.
- Click "Compare & pull request".
- Fill in the PR template, describing your changes and why they are needed.
- Submit the PR.
- Follow the existing code style and structure.
- Use
yarn lintandyarn formatto automatically fix most issues. - Prefer descriptive variable and function names.
- All PRs are subject to code review.
- Be responsive to feedback and make requested changes.
- Squash or rebase your commits if asked.
- Keep your branches up to date with the base branch.
- If you add or change dependencies, explain why in your PR.
- Update documentation if your changes affect usage or APIs.