Skip to content

MetehanTosun/Stay-in-Sync

Repository files navigation

Stay-in-Sync

The stay-in-sync project aims to provide a solution to synchronizing data between various REST-APIs while integrating support for the asset-administratio-shell and the tractus-x eclipse dataspace connector

What is inside of the repository?

The repository currently consits of five quarkus apps, two angular ui's and a helmchart for deployment.

Local setup for development

Following system requirements have to be met in order to start the application in development mode:

  • Java 21
  • Maven
  • Nodejs
  • rabbitmq
  • mariadb
  • Docker

Following commands can be used to setup docker containers for rabbitmq and mariadb

RabbitMQ

docker run --detach -it --name rabbitmq -p 5672:5672 -p 15672:15672 rabbitmq:4-management

MariaDB

docker run --detach -p 3306:3306 --name mariadb --env MARIADB_ROOT_PASSWORD=root --env MYSQL_DATABASE=stayinsync_core mariadb:latest

Starting apps in dev mode:

Please build the whole project once before starting a service with the database available like so:

mvn clean install

To start a quarkus app and its corresponding ui run in the folder of the quarkus-app

mvn quarkus:dev

Swagger UI not loading? If http://localhost:8090/q/swagger-ui shows the Angular app instead of Swagger UI, the browser has cached an outdated response. Fix: clear the browser cache (Settings → Clear browsing data → Cached images and files) and restart the browser completely.

Running the full system with Docker Compose

A docker-compose.yml is provided at the root of the repository to start all services with a single command. A .env file is required — copy the example and adjust as needed:

DB_NAME=stayinsync_core
DB_USERNAME=root
DB_PASSWORD=root
RABBITMQ_USERNAME=guest
RABBITMQ_PASSWORD=guest
GRAFANA_USER=admin
GRAFANA_PASSWORD=admin

Infrastructure only (MariaDB + RabbitMQ)

docker compose up -d

Core services + infrastructure

docker compose --profile app up -d

Everything including monitoring (Grafana, Loki, Prometheus, Fluent Bit)

docker compose --profile app --profile monitoring up -d
Service URL
Configurator UI / core-management http://localhost:8090
Swagger UI (core-management) http://localhost:8090/q/swagger-ui
core-sync-node http://localhost:8091
core-polling-node http://localhost:8095
Monitoring UI http://localhost:8099
Grafana http://localhost:3000
RabbitMQ Management http://localhost:15672

About

Data synchronization system for REST APIs with Asset Administration Shell (AAS) and Tractus-X Eclipse Dataspace Connector support. Enables automated data transformation and synchronization between heterogeneous data sources.

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors