WebVOWL rewritten in Rust with a modern React frontend.
WasmVOWL is a modern web application for visualizing ontologies, based on the original WebVOWL project. This project is a complete rewrite, featuring a Rust-powered backend compiled to WebAssembly (Wasm) for high-performance graph layout and rendering, and a modern, responsive frontend built with React.
- High-Performance Visualization: Leveraging Rust and WebAssembly for efficient, client-side rendering of large and complex ontologies.
- Modern, Responsive UI: A completely redesigned user interface built with React, providing a seamless and intuitive user experience across all devices.
- Interactive Graph Visualization: Smooth, interactive controls for panning, zooming, and exploring ontology graphs.
- Extensible and Modular: A clean, modern architecture that is easy to extend and customize.
- Based on a Proven Concept: Built on the solid foundation of the original WebVOWL, a widely used and respected tool in the semantic web community.
- /legacy: The original WebVOWL codebase, preserved for reference and comparison.
- /modern: The new React-based frontend application.
- The Rust-powered WebAssembly backend for graph layout and rendering is no longer
vendored here. It lives in its own MIT repo, DreamLab-AI/vowl-wasm,
and is consumed as the pinned
@dreamlab-ai/vowl-wasmpackage (cratevowl-wasmon crates.io).
- Node.js (v22 or higher)
No Rust or wasm-pack toolchain is required: the WASM engine is installed as a pinned, integrity-locked npm dependency.
-
Clone the repository:
git clone https://github.com/DreamLab-AI/WasmVOWL.git cd WasmVOWL -
Install frontend dependencies (this pulls the pinned WASM engine):
cd modern npm ci -
Run the development server:
npm run dev
The application will be available at http://localhost:5173.
Contributions are welcome! Please feel free to submit a pull request or open an issue to discuss your ideas.
This project is licensed under the MIT License - see the license.txt file for details.
The standalone demo remains held while its consumer contract is reconciled. The remote engine extraction is retained: this checkout consumes the locked v0.1.1 release archive, while other publishers have separate package pins. The earlier 47 native / 19 passing and 60 failing frontend observations refer to the pre-extraction checkout, not a test of this merged version. See the proposed consumer-contract ADR. Historical readiness and performance claims are not re-certified.