SysIDE: SysML v2 Modeling IDE

SysIDE (pronounced "seaside") provides SysML v2 language support in VS Code.
SysIDE includes a language server for SysML v2 and KerML 2023-02 release specifications. Together with VS Code, SysIDE serves as integrated development environment (IDE) for SysML v2.
This extension provides:
- autocompletion,
- code navigation,
- semantic highlighting,
- formatting,
- syntax validation,
- reference search,
- folding,
- document symbols,
- renaming,
- documentation on hover.
SysIDE is built and maintained by Sensmetry, a company focused on ensuring the safety and reliability of mission & safety critical systems.
The initial version has been created as an R&D effort, and contributions are highly encouraged. To provide your contributions please see the CONTRIBUTING.md document.
Quick start
- Install the latest extension from the marketplace.
- Open a SysMLv2 (.sysml) file and the extension will activate.
- Upon the first activation a pop-up will be displayed asking you to either locate an existing SysMLv2 standard library (
sysml.library
directory from SysML-v2-Release repository) or download it. The pop-up may also be disabled globally or in the workspace and the extension will continue without standard library support.
Features
The extension provides basic features to support SysMLv2 document editing:
Autocompletion
Code navigation
Semantic highlighting
Auto-formatting:
Comment bodies
Elements
Renaming
Hovers
References
Document symbols
Folding

Known Limitations
See docs/known_limitations.md.
Developer instructions
Building from source code
- Install
pnpm
- Run
pnpm install
to install dependencies.
- Run
pnpm run grammar:generate
to generate TypeScript code from the grammar
definition.
- Run
pnpm run esbuild
to compile all TypeScript code.
Make changes
- Run
pnpm run install-hooks
to install git hooks.
- Run
pnpm run watch
to have the TypeScript compiler run automatically after
every change of the source files.
- Run
pnpm run grammar:watch
to have the Langium generator run automatically
after every change of the grammar declaration.
- You can relaunch the extension from the debug toolbar after making changes to
the files listed above.
- You can also reload (
Ctrl+R
or Cmd+R
on Mac) the VS Code window with your
extension to load your changes.
Packaging
To package the extension for VS Code run:
pnpm run vscode:package
Contributing
See CONTRIBUTING.md.
Disclaimer
SysIDE is developed for the language that carries the name of SysML which is a trademark of OMG. SysIDE has been started and continues to be maintained by Sensmetry.
The project is open source. For further information, see LICENSE.