CloudRef is a web-based tool for managing bibliographical references. It supports collaborative work and quality assurance of references. The software consists of an Angular application at the front end and a Java application at the back end. For the front end the admin template "ng2-admin" by Akveo is used.
docker run -p 127.0.0.1:8080:8080 jabref/cloudref- Open http://localhost:8080/
The user maintainer with password developer was created. It has full rights for merging references. Other users can just be created via the login form and cannot merge if the threshold of 5 was not reached.
Note that the data is stored inside the Docker container and might get lost. To connect a local folder (e.g., D:\CloudRef) to docker, use following command:
docker run --rm -v"D:/CloudRef:/root/CloudRef" -p 127.0.0.1:8080:8080 jabref/cloudref docker build -t cloudref .docker run -p 127.0.0.1:8080:8080 cloudref- Open http://localhost:8080/
Node version >= 6.0 and NPM version >= 3 required!
Versions can be checked with:
node -v npm -v -
Clone repository or download .zip file
-
Navigate into the "frontend" folder of the project
-
Install dependencies
npm install
-
Front end: run following command in the "frontend" folder
npm start -
Back end: run following command in the "backend" folder
./gradlew run
The application is available at http://localhost:4200 and a Swagger definition of the RESTful web service of the back end at http://localhost:8080/swagger.json.
A user with the role 'MAINTAINER' can additionally edit a suggestion for modification. Furthermore, he can accept and reject suggestions directly. The role of a user cannot be changed through the user interface but in the database.
Possibility to change the role:
-
Download the SQLite Command Line Shell ("sqlite-tools") from https://sqlite.org/download.html.
-
Copy
sqlite3.exeinto the folder where the database is stored{USER_DIRECTORY}/CloudRef -
Open
sqlite3.exefile -
Run
.open CloudRef.sqlite UPDATE User SET role = 'MAINTAINER' WHERE username = {username};
We needed to change the basePath in DefaultApi.ts as follows
protected basePath = location.protocol + '//' + location.hostname + ':' + location.port === '4200' ? '8080' : location.port); In case you regenerate DefaultApi.ts, please patch this line.
