Status: Alpha - Active development, APIs may change
A Rust-based parser and tooling for SysML v2 (Systems Modeling Language) and KerML (Kernel Modeling Language).
This is a meta-repository that aggregates all Syster components via Git submodules. Each component lives in its own repository for independent development and versioning.
| Component | Repository | Description |
|---|---|---|
| syster-base | jade-codes/syster-base | Core library with parser, AST, and semantic analysis |
| syster-cli | jade-codes/syster-cli | Command-line tool for analyzing SysML/KerML files |
| syster-lsp | jade-codes/syster-lsp | Language Server Protocol implementation with VS Code extension |
| Component | Repository | Description |
|---|---|---|
| @syster/diagram-core | jade-codes/syster-diagram-core | Core diagram types and layout algorithms |
| @syster/diagram-ui | jade-codes/syster-diagram-ui | React Flow UI components for diagrams |
| Extension | Repository | Description |
|---|---|---|
| sysml-language-support | jade-codes/syster-vscode-lsp | Main language support extension (LSP client) |
| syster-viewer | jade-codes/syster-vscode-viewer | Diagram viewer extension |
| syster-modeller | jade-codes/syster-vscode-modeller | Diagram modeller extension |
| Component | Repository | Description |
|---|---|---|
| syster-pipelines | jade-codes/syster-pipelines | CI/CD pipeline templates |
This repository includes a VS Code dev container with all development tools pre-installed:
- Open the repository in VS Code
- When prompted, click "Reopen in Container" (or run
Dev Containers: Reopen in Containerfrom the command palette) - The container will automatically:
- Initialize all git submodules
- Install Rust, Node.js, and Bun
- Set up the VS Code LSP extension dependencies
```bash
git clone --recurse-submodules https://github.com/jade-codes/syster.git
git submodule update --init --recursive ```
Each crate is independent - build separately:
```bash cd crates/syster-base && cargo build && cargo test cd crates/syster-cli && cargo build cd crates/syster-lsp && cargo build ```
cd editors/vscode-lsp && npm install && npm run esbuild
cd packages/diagram-core && bun install
cd packages/diagram-ui && bun install-
Build the LSP binary:
cd crates/syster-lsp && cargo build --release
-
Build the extension:
cd editors/vscode-lsp && npm install && npm run esbuild
-
Press
F5in VS Code to launch the extension in a new window
Documentation lives in each component's repository:
- syster-base - Core architecture, SysML primer, contributing guide
- syster-lsp - LSP features and VS Code extension usage
MIT License - see LICENSE.md