{"id":49110435,"url":"https://github.com/jpipe-mcscert/jpipe-vscode","last_synced_at":"2026-04-26T19:01:29.626Z","repository":{"id":300436936,"uuid":"1006156182","full_name":"jpipe-mcscert/jpipe-vscode","owner":"jpipe-mcscert","description":"VS Code extension","archived":false,"fork":false,"pushed_at":"2026-03-31T15:46:09.000Z","size":38215,"stargazers_count":3,"open_issues_count":7,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-21T04:29:41.142Z","etag":null,"topics":["justification","langium","language","vscode-extension"],"latest_commit_sha":null,"homepage":"https://marketplace.visualstudio.com/items?itemName=mcscert.jpipe-extension","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jpipe-mcscert.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"code-of-conduct.md","threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-06-21T16:09:46.000Z","updated_at":"2025-10-09T20:29:12.000Z","dependencies_parsed_at":null,"dependency_job_id":"6b924cff-201b-4e87-a911-e3fd93bd6c6a","html_url":"https://github.com/jpipe-mcscert/jpipe-vscode","commit_stats":null,"previous_names":["jpipe-mcscert/jpipe-vscode"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/jpipe-mcscert/jpipe-vscode","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jpipe-mcscert%2Fjpipe-vscode","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jpipe-mcscert%2Fjpipe-vscode/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jpipe-mcscert%2Fjpipe-vscode/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jpipe-mcscert%2Fjpipe-vscode/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jpipe-mcscert","download_url":"https://codeload.github.com/jpipe-mcscert/jpipe-vscode/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jpipe-mcscert%2Fjpipe-vscode/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32308878,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-26T17:23:19.671Z","status":"ssl_error","status_checked_at":"2026-04-26T17:23:19.195Z","response_time":129,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["justification","langium","language","vscode-extension"],"created_at":"2026-04-21T04:09:00.725Z","updated_at":"2026-04-26T19:01:29.621Z","avatar_url":"https://github.com/jpipe-mcscert.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# jPipe - VS Code Extension \u0026 Language Server\n\n\u003cdiv align=\"center\"\u003e\n\n![mcscert](https://raw.githubusercontent.com/jpipe-mcscert/jpipe-vscode/main/packages/extension/images/mcscert.png)\n\n\u003c/div\u003e\n\n## Contributors\n\n  - [Dr. Sébastien Mosser](https://mosser.github.io/), Associate Professor, McMaster University\n  - [Cass Braun](https://www.linkedin.com/in/cass-braun/), B.Eng. Student, McMaster University\n  - [Andrew Bovbel](https://www.linkedin.com/in/andrewbovbel/), B.Eng. Student, McMaster University\n  - [Nirmal Chaudhari](https://www.linkedin.com/in/nirmal2003/), B.Eng. Student, McMaster University\n\n## Contributing to the plugin\n\nYou can find more information about the jPipe project on the main repository: [https://github.com/jpipe-mcscert](https://github.com/jpipe-mcscert)\n\n### Repository Organization\n\n- `packages/extension`: Code specific to the VS Code platform\n  - Visualization of justification models (preview)\n  - Interaction with the jPipe compiler\n- `package/language`: Language definition for the Language Server\n  - jPipe grammar using Langium;\n  - Validation rules\n  - Scoping rules\n\n### How to setup the development environment?\n\n```\nmosser@azrael jpipe-vscode % npm install\nmosser@azrael jpipe-vscode % npm install -g @vscode/vsce\n```\n\n### How to build and run the project?\n\n- To generate the language artifacts based on the grammar\n```\nmosser@azrael jpipe-vscode % npm run langium:generate\n```\n\n- To build the extension:\n```\nmosser@azrael jpipe-vscode % npm run build\n```\n\n- To run the project in a new VS Code instance:\n  - Simply press `F5`, it'll open a new VS Code environment with the plugin started.\n\n### How to build a releasable VS Code extension?\n\n- Building the extension\n```\nmosser@azrael jpipe-vscode % cd packages/extension \nmosser@azrael extension % vsce package -o jpipe-vscode.vsix\n```\n\n- Installing the extension locally:\n```\nmosser@azrael extension % code --install-extension jpipe-vscode.vsix\n```\n\n- Publishing the extension to the marketplace\n```\nmosser@azrael extension % vsce publish\n```\n\n### How to bump the version?\n\nThe version must be updated in sync across four locations:\n\n- `package.json` (monorepo root)\n- `packages/extension/package.json`\n- `packages/language/package.json`\n- The `jpipe-language` dependency inside `packages/extension/package.json` `dependencies` block\n\nThe first three are handled by a single command:\n```\nmosser@azrael jpipe-vscode % npm version \u003cnew-version\u003e --no-git-tag-version --workspaces --include-workspace-root\n```\n\nThen manually update the `jpipe-language` dependency version in `packages/extension/package.json` to match:\n```json\n\"dependencies\": {\n    \"jpipe-language\": \"\u003cnew-version\u003e\",\n    ...\n}\n```\n\nReplace `\u003cnew-version\u003e` with the desired version (e.g. `1.1.0`) or a semver increment keyword (`patch`, `minor`, `major`) for the npm command.\n\n### AI assistance policy\n\nParts 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:\n\n- Pull requests must not be 100% AI-generated. Every contribution must reflect the understanding and judgement of a human author.\n- Human authors are fully responsible for the correctness, quality, and appropriateness of their contributions, regardless of whether AI tools were used in their preparation.\n- Reviewers may ask contributors to explain any part of their submission.\n\n## Sponsors\n\nWe acknowledge the support of McMaster University, McMaster Centre for Software Certification, and the _Natural Sciences and Engineering Research Council of Canada_ (NSERC).\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjpipe-mcscert%2Fjpipe-vscode","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjpipe-mcscert%2Fjpipe-vscode","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjpipe-mcscert%2Fjpipe-vscode/lists"}