Development Environment
Orientation
The Databus is implemented in Javascript using Nodejs+Express for the Server and Angularjs for the client-side webapp. The nodejs server is providing both the API and the webapp resources. The webapp does not have its own server and runs only in the browser.
The Databus is best developed using Visual Studio Code to use the startup scripts in the .vscode folder.
Requirements
node.js: v16.13.0 or higher
# see https://github.com/nodesource/distributions/blob/master/README.md
# Using Ubuntu
curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash -
sudo apt-get install -y nodejs
npm: 7.24.0 or higher
sudo npm install -g npm@latestdocker: 20.10.2 or higherdocker-compose: 1.25.0 or higher
sudo apt-get install docker docker-composephp: v8.1.0 or higher
java
Clone Repository & Prepare for Development
git hookto automatically add files (generated bymodel-docu/model.php) to commits
Building the Databus Docker Image
The following instructions will build the docker image for the Databus Server. Only do this if you want to run the Databus as a dockerized application. If you want to run the Databus without docker, you can skip this section.
The build-docker-image.sh script will install all npm dependencies for the server and webclient and build the docker image for the Databus application.
Starting the Databus Locally
Starting the Databus Environment
Go to the devenv directory of the repository and start the database and lookup search containers
You can restart these containers using make env-restart. Additionally, there is a make instruction for a restart with database wipe (make env-clean-start)
Starting the Databus Server
First, install all dependencies by running:
Then run either:
or
Each script contains a different configuration for a specific OIDC provider (Auth0 with Google Auth or DBpedia Login)
PLEASE NOTE: The sample OIDC providers are a development setup and should never be used in production. Please use your own OIDC provider for authentication in production.
Last updated