This repository contains multiple Visual Studio Code extensions developed by WSO2, along with a set of shared libraries. The extensions in this monorepo include:
Before using this repository, ensure you have the following installed:
-
Node.js – version 22.x or later
Download Node.js -
npm – version 10.x or later (comes with Node.js)
-
pnpm – version 10.10 or later
Install with:npm install -g pnpm
-
Rush.js – version 5.153 or later
Install with:npm install -g @microsoft/rush
Install all dependencies for the repository:
rush install
This will install dependencies for all workspaces in the monorepo.
To build all packages:
rush build
This uses a local build cache, so only changed packages are rebuilt.
To build a specific package:
rush build --to <package-name>
Replace <package-name>
with the name of the package you want to build.
Example:
rush build --to @wso2/ballerina-visualizer
To add a new package:
- Navigate to the root directory of the desired package:
cd <path-to-workspace>
- Run:
Use the
rush add --package <package-name>
-m
argument to update other packages'package.json
files to the same version if needed.
rush update
: Updates the dependencies shrinkwrap file.rush rebuild
: Cleans thecommon/temp
folder and then runsrush build
.rush check
: Checks dependency consistency across packages.rush purge
: Cleans up temporary files and folders.
If you are planning on contributing to the development efforts of WSO2 API Manager or related extensions, you can do so by checking out the latest development version. The master
branch holds the latest unreleased source code.
Please follow the detailed instructions available here: https://wso2.github.io
- Fork the repository before making changes.
- Follow the structure and conventions outlined in this document.
- Submit pull requests with clear descriptions and reference related issues if applicable.
By downloading and using any of the Visual Studio Code extensions in this repository, you agree to the license terms and privacy statement.
Some extensions use additional components licensed separately. For example:
- The Ballerina extension uses the Ballerina Language Server, part of the Ballerina language (Apache License 2.0).
- The Ballerina extension pack includes TOML Language Support.
Please refer to each extension's documentation for more details on licensing and dependencies.
For organization-wide standards and additional information, see SOURCE_ORG.md.