A prototype implementation of the query-comparison approach presented in the accompanying paper.
In order to build an run the project, Node.js and its package manager NPM are required. Both can be found the Node.js website.
After cloning the repository, the npm dependencies have to be installed.
This can be done by navigating the terminal to the repository's root directory and executing: npm install
In case of problems because of out-of-date dependencies, try running npm update
first.
It may take up to a few minutes.
There are several npm scripts provided for building and running the project.
-
npm run build-web
: Compiles the project into a browser-compatible JavaScript filehtml/js/index.js
. After this,html/index.html
can be opened with a browser to use the project in standalone mode. Or,html/js/index.js
can be copied into or referenced by a web-app intending to use it. -
npm run build-node
: Compiles the project into JavaScript files for Node.js into the createddist/
folder. After this, the project can be imported and used in other Node.js projects. -
npm test
ornpm run test
: Compiles the project likenpm run build-node
and then tests certain example calculations. If you are interested in examples for how to use this project, have a look intotest.js
. -
npm start
ornpm run start
: Starts a small HTTP server and opens a browser with the project in standalone mode. It has an auto-reload feature, automatically reloading the site when project files are altered, which is especially useful during development. Firefox is recommended over Chrome for this, because it automatically keeps the content of text fields across reloads. Note that this also applies to the edit cost configuration, so in order to reset it, the respective text field must first be cleared, followed by a reload. Also note that the server compiles the project internally, but does not generate the filehtml/js/index.js
, likenpm run build-web
does. -
npm run doc
: Generates a TypeDoc documentation of the project inside thedocs/
folder.
As part of the paper, a survey was also conducted for evaluation purposes. Detailed information about the survey can be found in the survey
folder.