0.21.2 • Published 10 months ago
@open-cyber-range/wasm-sdl-parser v0.21.2
SDL Verifier WebAssembly
This Rust-based WebAssembly library provides a simple function to verify SDL (Schema Definition Language) text using the provided Scenario parsing and verification code. It is intended to be used in web applications for efficient client-side SDL validation.
Features
- Validates SDL text using a Rust-based custom
Scenarioparser. - Exposes a WebAssembly function for use in web applications.
- Optimized for small binary size and fast execution.
Prerequisites
Usage
Clone this repository:
git clone <https://github.com/Open-Cyber-Range/SDL-parser.git> cd wasm-sdl-parserBuild the project and generate the WebAssembly binary:
wasm-pack build --target web --releaseThis will create a
pkgdirectory containing the WebAssembly binary and a JavaScript wrapper for theparse_and_verify_sdlfunction.Integrate the generated files into your web application:
<script type="module"> import init, { parse_and_verify_sdl } from './pkg/wasm-sdl-parser.js'; async function main() { await init(); // Initialize the WebAssembly module const sdl_text = ` name: test-scenario description: some-description start: 2022-01-20T13:00:00Z end: 2022-01-20T23:00:00Z `; try { const scenario_json = parse_and_verify_sdl(sdl_text); console.log(scenario_json); } catch (error) { console.log(error) } } main(); </script>Replace the
sdl_textvariable with the SDL text you want to verify.
Customization
If you need to customize the SDL validation logic, modify the parse_and_verify_sdl function in src/lib.rs.
License
This project is licensed under the MIT License.