-
Notifications
You must be signed in to change notification settings - Fork 11
Add contribution guidelines #1354
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
| ## Development Setup | ||
|
|
||
| ### Prerequisites | ||
| - **Node.js**: >=20.0.0 <23.0.0 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The required node version mentioned in https://github.com/wso2/vscode-extensions/#prerequisites is >= 22. Shall we double check this?
|
|
||
| ### Prerequisites | ||
| - **Node.js**: >=20.0.0 <23.0.0 | ||
| - **Package Manager**: Rush.js with pnpm |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should we guide the user to install rush as well? WDYT?.
Alternatively, we can point them at the prerequisites mentioned in https://github.com/wso2/vscode-extensions/#prerequisites which does have the steps to install all the prerequisites.
|
|
||
| ## Repository Overview | ||
|
|
||
| This repository (`product-ballerina-integrator`) is primarily used for **issue tracking** for the WSO2 Ballerina Integrator product. The actual development happens in separate repositories: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| This repository (`product-ballerina-integrator`) is primarily used for **issue tracking** for the WSO2 Ballerina Integrator product. The actual development happens in separate repositories: | |
| This repository (`product-ballerina-integrator`) is primarily used for **issue tracking** for the WSO2 Integrator: BI product. The actual development happens in separate repositories: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Other places might have to be updated as well
| @@ -0,0 +1,175 @@ | |||
| # Contributing to WSO2 Ballerina Integrator | |||
|
|
|||
| Thank you for your interest in contributing to WSO2 Ballerina Integrator! This guide will help you understand how to contribute to different parts of the project. | |||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| Thank you for your interest in contributing to WSO2 Ballerina Integrator! This guide will help you understand how to contribute to different parts of the project. | |
| Thank you for your interest in contributing to WSO2 Integrator: BI! This guide will help you understand how to contribute to different parts of the project. |
| npm run e2e-test | ||
| ``` | ||
|
|
||
| ### Backend Development Setup |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Shall we also include setup instructions (similar to the Initial Setup section above for the frontend) for the language server here as well?
| # Watch mode for development (from individual package directories) | ||
| cd workspaces/ballerina/ballerina-visualizer | ||
| npm start | ||
|
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
Adds contribution guidelines and surfaces them from the README to help new contributors discover how to work across the frontend and backend repos.
- Introduces a comprehensive CONTRIBUTING.md with setup, contribution flows, and architecture guidance
- Updates README with a Contributing section linking to the new guide
Reviewed Changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 5 comments.
| File | Description |
|---|---|
| README.md | Adds a Contributing section linking to CONTRIBUTING.md and outlining what it covers |
| CONTRIBUTING.md | New, detailed contribution guide covering repo overview, setup, best practices, and support channels |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
| - **Go to Definition**: Navigate to symbol definitions | ||
| - **Diagnostics**: Real-time error and warning reporting | ||
| - **Code Actions**: Quick fixes and refactoring suggestions | ||
| - **Goto Implementation**: Find interface implementations |
Copilot
AI
Oct 18, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Correct 'Goto Implementation' to 'Go to Implementation' for consistency with 'Go to Definition' and standard terminology.
| - **Goto Implementation**: Find interface implementations | |
| - **Go to Implementation**: Find interface implementations |
| # Install dependencies | ||
| rush install | ||
|
|
||
| # Build all packages | ||
| rush build |
Copilot
AI
Oct 18, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Before using 'rush install', add an explicit step to install the Rush CLI so new contributors don't hit a 'rush: command not found' error. Example: 'npm install -g @microsoft/rush' (or note that 'npx @microsoft/rush install' can be used without a global install).
| - **Visual Components**: `workspaces/ballerina/ballerina-visualizer/` | ||
| - **Core Libraries**: `workspaces/ballerina/ballerina-core/` | ||
| - **RPC Client**: `workspaces/ballerina/ballerina-rpc-client/` | ||
| - **Diagram Components**: `workspaces/ballerina/sequence-diagram/`, `type-diagram/`, etc. |
Copilot
AI
Oct 18, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The second path is missing the 'workspaces/ballerina/' prefix for consistency and clarity. Suggested: 'workspaces/ballerina/type-diagram/'.
| - **Diagram Components**: `workspaces/ballerina/sequence-diagram/`, `type-diagram/`, etc. | |
| - **Diagram Components**: `workspaces/ballerina/sequence-diagram/`, `workspaces/ballerina/type-diagram/`, etc. |
|
|
||
| ## Code of Conduct | ||
|
|
||
| Please note that this project follows WSO2's Code of Conduct. By participating in this project, you agree to abide by its terms. |
Copilot
AI
Oct 18, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Provide a direct link to the Code of Conduct so contributors can easily find it. For example: 'Please note that this project follows WSO2's Code of Conduct ...' (or link to the official WSO2 page if applicable).
| Please note that this project follows WSO2's Code of Conduct. By participating in this project, you agree to abide by its terms. | |
| Please note that this project follows WSO2's [Code of Conduct](https://wso2.com/code-of-conduct/). By participating in this project, you agree to abide by its terms. |
|
|
||
| ## License | ||
|
|
||
| By contributing to WSO2 Ballerina Integrator, you agree that your contributions will be licensed under the Apache License 2.0. |
Copilot
AI
Oct 18, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Link to the license text to remove ambiguity. For example: '... licensed under the Apache License 2.0' (or link to https://www.apache.org/licenses/LICENSE-2.0 if there is no local LICENSE file).
| By contributing to WSO2 Ballerina Integrator, you agree that your contributions will be licensed under the Apache License 2.0. | |
| By contributing to WSO2 Ballerina Integrator, you agree that your contributions will be licensed under the [Apache License 2.0](https://www.apache.org/licenses/LICENSE-2.0). |

Purpose
#1353
Goals
Approach
User stories
Release note
Documentation
Training
Certification
Marketing
Automation tests
Security checks
Samples
Related PRs
Migrations (if applicable)
Test environment
Learning