https://github.com/jpipe-mcscert/jpipe-vscode
VS Code extension
https://github.com/jpipe-mcscert/jpipe-vscode
justification langium language vscode-extension
Last synced: about 2 months ago
JSON representation
VS Code extension
- Host: GitHub
- URL: https://github.com/jpipe-mcscert/jpipe-vscode
- Owner: jpipe-mcscert
- License: mit
- Created: 2025-06-21T16:09:46.000Z (12 months ago)
- Default Branch: main
- Last Pushed: 2026-03-31T15:46:09.000Z (2 months ago)
- Last Synced: 2026-04-21T04:29:41.142Z (about 2 months ago)
- Topics: justification, langium, language, vscode-extension
- Language: TypeScript
- Homepage: https://marketplace.visualstudio.com/items?itemName=mcscert.jpipe-extension
- Size: 36.4 MB
- Stars: 3
- Watchers: 0
- Forks: 0
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
- Code of conduct: code-of-conduct.md
- Citation: CITATION.cff
Awesome Lists containing this project
README
# jPipe - VS Code Extension & Language Server

## Contributors
- [Dr. Sébastien Mosser](https://mosser.github.io/), Associate Professor, McMaster University
- [Cass Braun](https://www.linkedin.com/in/cass-braun/), B.Eng. Student, McMaster University
- [Andrew Bovbel](https://www.linkedin.com/in/andrewbovbel/), B.Eng. Student, McMaster University
- [Nirmal Chaudhari](https://www.linkedin.com/in/nirmal2003/), B.Eng. Student, McMaster University
## Contributing to the plugin
You can find more information about the jPipe project on the main repository: [https://github.com/jpipe-mcscert](https://github.com/jpipe-mcscert)
### Repository Organization
- `packages/extension`: Code specific to the VS Code platform
- Visualization of justification models (preview)
- Interaction with the jPipe compiler
- `package/language`: Language definition for the Language Server
- jPipe grammar using Langium;
- Validation rules
- Scoping rules
### How to setup the development environment?
```
mosser@azrael jpipe-vscode % npm install
mosser@azrael jpipe-vscode % npm install -g @vscode/vsce
```
### How to build and run the project?
- To generate the language artifacts based on the grammar
```
mosser@azrael jpipe-vscode % npm run langium:generate
```
- To build the extension:
```
mosser@azrael jpipe-vscode % npm run build
```
- To run the project in a new VS Code instance:
- Simply press `F5`, it'll open a new VS Code environment with the plugin started.
### How to build a releasable VS Code extension?
- Building the extension
```
mosser@azrael jpipe-vscode % cd packages/extension
mosser@azrael extension % vsce package -o jpipe-vscode.vsix
```
- Installing the extension locally:
```
mosser@azrael extension % code --install-extension jpipe-vscode.vsix
```
- Publishing the extension to the marketplace
```
mosser@azrael extension % vsce publish
```
### How to bump the version?
The version must be updated in sync across four locations:
- `package.json` (monorepo root)
- `packages/extension/package.json`
- `packages/language/package.json`
- The `jpipe-language` dependency inside `packages/extension/package.json` `dependencies` block
The first three are handled by a single command:
```
mosser@azrael jpipe-vscode % npm version --no-git-tag-version --workspaces --include-workspace-root
```
Then manually update the `jpipe-language` dependency version in `packages/extension/package.json` to match:
```json
"dependencies": {
"jpipe-language": "",
...
}
```
Replace `` with the desired version (e.g. `1.1.0`) or a semver increment keyword (`patch`, `minor`, `major`) for the npm command.
### AI assistance policy
Parts of this codebase were developed with the assistance of Claude (Anthropic), an AI coding assistant. We are transparent about this use and welcome AI-assisted contributions, subject to the following conditions:
- Pull requests must not be 100% AI-generated. Every contribution must reflect the understanding and judgement of a human author.
- Human authors are fully responsible for the correctness, quality, and appropriateness of their contributions, regardless of whether AI tools were used in their preparation.
- Reviewers may ask contributors to explain any part of their submission.
## Sponsors
We acknowledge the support of McMaster University, McMaster Centre for Software Certification, and the _Natural Sciences and Engineering Research Council of Canada_ (NSERC).