Skip to content

DisCo-BaTS/webview

Repository files navigation

DISCO-BATS Project Logo

DisCo-BaTS

Distributed Component-Based Traffic Simulation

A framework for highly flexible scenario modeling and direct simulation execution
without the need for manual model-transformations or adjustments of the simulation application.

Centered around a unified meta-model that explicitly targets scenario-based simulation testing of
various software-based systems and system-components, which can be located both locally and remotely.

Module: WebView - Group: Tools

License NodeJS TypeScript React


Using the WebView

An up-to-date version of node.js is required to use both the server and the front end! An up-to-date version of npm is required to build the front end! The very first step is to execute the command “npm install” in the main directory so that all node packages are installed.

If you want to visualize a simulation run, you can use server.js in the server package to start a WebSocket server in the console, which receives the simulation data and forwards it to the React app that visualizes ships, buoys and waterbodies. Additionally it does show the current simulation time in the header and allows to see the lat/lng coordinates of the position the cursor is located that can also be copied by pressing strg+c. Positions of vessels of past timesteps are visualized by colored dots, so that the route traveled can be recognized.

To start the server that starts/opens the websockt the simulation application does connect to if configured to use the websocketOutputConfig and the address and port pointing towards the ones used here, execute the following commands from the main directory:

cd server
node server.js

Since the configuration of the frontend and the server are set to localhost, the frontend should automatically connect to the WebSocket server. Both the server and the frontend log in the console when a connection has been successfully established.

To start the frontend, see the following section of the React documentation:

npm start
# Runs the app in the development mode. Open http://localhost:3000 to view it in the browser.
# The page will reload if you make edits. You will also see any errors in the console and / or on the webapp ui itself.

Project Structure


Important

This framework was developed as part of a doctoral thesis submitted on February 19, 2026, titled "Flexible Komponentenbasierte Modellierung und Simulation von Szenarien für die Verifizierung und Validierung automatisierter maritimer Fahrsysteme" (eng.: "Flexible component-based modeling and simulation of scenarios for the verification and validation of automated maritime navigation systems.").
Although a lot of work has been put into it, be aware that the software is still in a proof-of-concept stage and you may find currently unused code that was once used to explore alternative solutions, undocumented parts, missing comments, and other imperfections.


Documentation

For documentation check out the wiki pages and the READMEs located in the individual repositories.

Additionally, once the dissertation in which DisCo-BaTS was developed has been successfully defended and published, the URL to the corresponding publicly available PDF version will be added here.

Attribution

If you use the DisCo-BaTS modeling and simulation framework or parts of it for your own research, it would be appreciated if you would include the following reference in all published work for which DisCo-BaTS or parts of it where used:

A citable reference will be added here once the corresponding dissertation has been successfully defended and published.

Related Repositories

OpenLVC / poRTIco is utilized as the implementation of the Runtime Infrastructure (RTI) according to the High Level Architecture (HLA) standard for distributed cooperative simulation coupling in the version of 2010 (IEEE 1516:2010). The version of poRTIco used is 2.1.3.
PoRTIco is awesome - go support the maintainers! 💜

Contact

Any questions regarding DisCo-BaTS can be asked, discussed, and found in the discussion section.

License

Distributed Component-Based Traffic Simulation (DisCo-BaTS)
Copyright (C) 2026 David Reiher https://github.com/dvdrhr

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License version 3 as published by the Free Software Foundation

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License version 3 for more details.

You should have received a copy of the GNU Lesser General Public License along with this program.
If not, see https://www.gnu.org/licenses/lgpl+gpl-3.0.txt and https://www.gnu.org/licenses/lgpl-3.0.en.html.

About

No description, website, or topics provided.

Resources

License

LGPL-3.0, GPL-3.0 licenses found

Licenses found

LGPL-3.0
COPYING.LESSER
GPL-3.0
COPYING

Stars

Watchers

Forks

Packages

 
 
 

Contributors