The web application of the project, utilizing a basic Node.js [1] express [2] API for all the different routes and functionalities. These include:
- An interactive Dashboard
- The Process Modelling component
- Dataset management interface
- A Custom Function Modelling component
- Application monitoring
- Adaptive data visualization
- Node.js
- Docker [3]
- Orchestrator Service
Create a .env
file containing the following:
PORT=5400
MONGO_URL=mongodb://mongo/
MINIO_URL=host.docker.internal
MINIO_ACCESS_KEY=diastema
MINIO_SECRET_KEY=diastema
ORCHESTRATOR_URL=http://83.212.238.166:50001/analysis
ORCHESTRATOR_INGESTION_URL=http://83.212.238.166:50001/ingestion
NORMALIZATION_URL=http://normalization:5000/normalize
VALIDATION_URL=http://validation:5001/validation
NODE_ENV=development
Run the following commands to install node modules and start the script for development / testing:
npm install
npm run docker:dev
The development script will also start some required services as containers:
- Function Normalization Service
- Graph Validation Service
- A dummy Data Verifier Service
- A MongoDB [4] database
- And a MinIO [5] object storage
You can now visit http://localhost:5400 where the application will be running.
Some additional npm scripts have been created to execute complex Docker commands, such as:
npm run docker:downdev
will stop and delete running containers in development modenpm run docker:build
will build the image again and then start the development containersnpm run docker:prod
will start just the application container. Requires proper environment variables configurationnpm run docker:downprod
will stop and delete running containers in production mode
- https://nodejs.org/en/
- https://expressjs.com/
- https://www.docker.com/
- https://www.mongodb.com/
- https://min.io/
Licensed under the Apache License Version 2.0 by Andreas Karabetian for the research project Diastema